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

TDSPSignal.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 TDSPSIGNAL_H
00019 #define TDSPSIGNAL_H
00020 
00021 #include <TDSPMatrix.h>
00022 #include <TDSPFifo.h>
00023 
00024 class TDSPFifo;
00025 
00031 class TDSPSignal : public TDSPMatrix {
00032   
00033 
00034  protected:
00035   
00036   TString fName; //signal name
00037   TString fTitle; // signal title
00038 
00039  public: 
00040 
00041   TDSPSignal(Int_t len=0);
00042   TDSPSignal(Int_t rows, Int_t cols);
00043   TDSPSignal(char *name);
00044   virtual ~TDSPSignal();
00045 
00046 
00047   // Friend functions
00048 
00049   friend Bool_t      operator==(TDSPSignal &, TDSPSignal &);
00050   friend istream    &operator>>(istream&,TDSPSignal&);
00051   friend ostream    &operator<<(ostream&,TDSPSignal&);
00052   friend istream    &operator>>(istream&,TDSPSignal*);
00053   friend ostream    &operator<<(ostream&,TDSPSignal*);
00054 
00055   
00056 /*   void        ModulateMe(TComplex, Int_t b=0,Double_t p=0);                       // Modulate the signal (multiply with a frequency) */
00057 /*   TDSPSignal* Modulate(TComplex, TDSPSignal* = NULL,Int_t b=0,Double_t p=0);      // Modulate the signal  */
00058 
00059   virtual void     SetName(const char *name); // *MENU*
00060   virtual void     SetNameTitle(const char *name, const char *title);
00061   virtual void     SetTitle(const char *title=""); // *MENU*
00062   virtual void     ls(Option_t *option="") const;
00063   virtual void     Print(Option_t *option="");
00064   virtual const char  *GetName() const {return fName.Data();}
00065   virtual const char  *GetTitle() const {return fTitle.Data();}
00066   
00067   
00068 
00069   TDSPSignal &operator=(TDSPFifo&); 
00070   TDSPSignal &operator=(TDSPFifo*f) { return operator=(*f);}; 
00071 
00072   ClassDef(TDSPSignal,1)
00073     
00074 };
00075   
00076 inline Bool_t operator==(TDSPSignal & z1, TDSPSignal & z2) {
00077   if (z1.fSamplingRate!=z2.fSamplingRate) return kFALSE;
00078   return operator==(*static_cast<TDSPVector*>(&z1),
00079             *static_cast<TDSPVector*>(&z1));
00080   
00081 }
00082 
00083 /* inline void TDSPSignal::ModulateMe(TComplex  freq, Int_t b,Double_t p) { */
00084 /*   TDSPVector::ModulateMe(freq,b); */
00085 /* } */
00086 /* inline TDSPSignal* TDSPSignal::Modulate(TComplex  freq, TDSPSignal *out, Int_t b, Double_t p) { */
00087 /*   return static_cast<TDSPSignal*>(TDSPVector::Modulate(freq,out,b,p)); */
00088 /* } */
00089 #endif

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