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 TMXARRAY_H 00019 #define TMXARRAY_H 00020 00021 #include <TNamed.h> 00022 #include <TDSPVector.h> 00023 #include <TDSPMatrix.h> 00024 00030 class TmxArray : public TNamed { 00031 00032 protected: 00033 00034 Bool_t fMymx; // is that my array ? 00035 void *fmxArray; 00036 00037 public: 00038 00039 TmxArray(); 00040 TmxArray(const char*); 00041 TmxArray(void*); 00042 00043 ~TmxArray(); 00044 00045 void Set(TDSPVector*); 00046 void Set(TDSPMatrix*); 00047 TmxArray& operator=(TDSPVector& x) {Set(&x);return *this;}; 00048 TmxArray& operator=(TDSPMatrix& x) {Set(&x);return *this;}; 00049 00050 void* Getmx() { return fmxArray;}; 00051 void Setmx(void* m); 00052 TDSPMatrix* Get(TDSPMatrix *s); 00053 TDSPVector* Get(TDSPVector *s = NULL); 00054 Bool_t IsString(); 00055 char* GetString(char *buf = NULL, Int_t buflen=0); 00056 TDSPVector* GetRow(Int_t r, TDSPVector*row=NULL); 00057 TDSPVector* GetColumn(Int_t r, TDSPVector*row=NULL); 00058 Int_t GetN(); 00059 Int_t GetM(); 00060 Int_t GetCols() { return GetN();}; 00061 Int_t GetRows() { return GetM();}; 00062 void SetName(const char *); 00063 const char* GetName(); 00064 void Print(); 00065 void Clean(); 00066 void Detach(); 00067 00068 // 00069 // some operators 00070 // 00071 TComplex Element(Int_t index); 00072 TComplex operator()(Int_t index) { return Element(index);}; 00073 00074 ClassDef(TmxArray,1) 00075 00076 }; 00077 00078 #endif
1.3.2