00001 // ===================================================================== 00002 // $Id: TMatrixElement.hh,v 1.1.1.1 2003/06/27 02:56:41 goiwai Exp $ 00003 // $Name: CLDAQ-1-06-00 $ 00004 // ===================================================================== 00005 #ifndef __TMATRIXELEMENT_HH 00006 #define __TMATRIXELEMENT_HH 00007 00008 #include "Tglobals.h" 00009 #include "TDataMultiplicity.hh" 00010 00011 class TMatrixElement 00012 : public TDataMultiplicity 00013 { 00014 00015 private: 00016 Tstring theMatrixID; 00017 Tobject_t theObjectType; 00018 00019 public: 00020 TMatrixElement( const Tstring& idstr = "", Tobject_t objecttype = tObjectUnknown, Tint ndata = 0, Tint ntuple = 0 ); 00021 TMatrixElement( const TMatrixElement& right ); 00022 ~TMatrixElement(); 00023 00024 public: 00025 const TMatrixElement& operator=( const TMatrixElement& right ); 00026 Tbool operator==( const TMatrixElement& right ) const; 00027 Tbool operator!=( const TMatrixElement& right ) const; 00028 00029 public: 00030 const Tstring& GetMatrixID() const; 00031 Tstring& GetMatrixID(); 00032 Tvoid SetMatrixID( const Tstring& id ); 00033 Tobject_t GetObjectType() const; 00034 Tvoid SetObjectType( Tobject_t objecttype ); 00035 00036 public: 00037 Tint GetNumberOfTuples() const; 00038 Tint GetNumberOfEvents() const; 00039 00040 }; 00041 00042 inline const Tstring& TMatrixElement::GetMatrixID() const 00043 { 00044 return( theMatrixID ); 00045 } 00046 00047 inline Tstring& TMatrixElement::GetMatrixID() 00048 { 00049 return( theMatrixID ); 00050 } 00051 00052 inline Tvoid TMatrixElement::SetMatrixID( const Tstring& id ) 00053 { 00054 theMatrixID = id; 00055 return; 00056 } 00057 00058 inline Tint TMatrixElement::GetNumberOfTuples() const 00059 { 00060 return( num_col() ); 00061 } 00062 00063 inline Tint TMatrixElement::GetNumberOfEvents() const 00064 { 00065 return( num_row() ); 00066 } 00067 00068 inline Tobject_t TMatrixElement::GetObjectType() const 00069 { 00070 return( theObjectType ); 00071 } 00072 00073 inline Tvoid TMatrixElement::SetObjectType( Tobject_t objecttype ) 00074 { 00075 theObjectType = objecttype; 00076 return; 00077 } 00078 00079 #endif