Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals

TDSPOperator.h

Go to the documentation of this file.
00001 
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00018 #ifndef TDSPOPERATOR_H
00019 #define TDSPOPERATOR_H
00020 
00021 #include <TCanvas.h>
00022 #include <TQQObject.h>
00023 #include <TDSPData.h>
00024 #include <TDSPSignal.h>
00025 #include <TQQGControl.h>
00026 
00031 class TDSPOperator : public TQQObject {
00032  
00033 
00034  protected:
00035 
00036 
00037   Bool_t fInitialized; // Is this Operator already initialized ?
00038 
00039   void CheckInitialization() {if (!fInitialized) Init();};  // Init the Operator if not yet done already
00040 
00042     //
00043   // Everything for Debugging such an Object 
00044 
00045   TCanvas*    fDebugWindow; 
00046   TCanvas*     DebugGetWindow(char *title); 
00047   Bool_t       DebugWaitToContinue(); 
00048 
00049  public:
00050   
00051   TDSPOperator(char *name = NULL);
00052   ~TDSPOperator();
00053   
00054 
00055   // Signal Emits
00056   //
00057   virtual void Emit(const char *signal_name) {
00058     TQQObject::Emit(signal_name);
00059   }
00060 
00061   virtual void Emit(const char *signal_name,
00062             TDSPData *f) {
00063     TQQObject::Emit(signal_name,(Long_t)f);
00064   }
00065   virtual void Emit(const char *signal_name,
00066             TDSPVector *f) {
00067     TQQObject::Emit(signal_name,(Long_t)f);
00068   }
00069   virtual void Emit(const char *signal_name,
00070             TDSPMatrix *f) {
00071     TQQObject::Emit(signal_name,(Long_t)f);
00072   }
00073   virtual void Emit(const char *signal_name,
00074             TDSPSignal *f) {
00075     TQQObject::Emit(signal_name,(Long_t)f);
00076   }
00077    
00078   virtual void Emit(const char *signal_name,
00079             TDSPOperator *o) {
00080 #ifndef WIN32
00081     TQQObject::Emit(signal_name,(Long_t)o);
00082 #endif
00083   }
00084 
00085   // Signals
00086 
00087   virtual void New(TDSPOperator*o){
00088     Emit("New(TDSPOperator*)",o);
00089   }; //*SIGNAL*
00090   
00091 
00092   virtual void Delete(TDSPOperator*o) {
00093     Emit("Delete(TDSPOperator*)",o);
00094   }; //*SIGNAL*
00095 
00096   virtual void Paint() {
00097     Emit("Paint()");
00098   }; //*SIGNAL*
00099 
00100   virtual TQQGControl* NewGControl(); 
00101 
00102   virtual void Reset();   //*SIGNAL*
00103   virtual void Init();    //*SIGNAL*
00104 
00105   ClassDef(TDSPOperator,1)
00106     
00107 };
00108 
00109 inline void TDSPOperator::Init() {
00110   fInitialized = kTRUE;
00111 }
00112 
00113 inline void TDSPOperator::Reset() {
00114   Emit("Reset()");
00115 }
00116 
00117 
00118 #endif

Generated on Fri Apr 23 16:23:43 2004 by doxygen 1.3.2