//////////////////////////////////// // KRATTA Array Event Unpacker // for the Asy-Eos experiment // TKRATPhotodiode DECLARATION // March 2012 // revison 3/2012 // E.d.F ver 1.0 // sebastian.kupny@uj.edu.pl // Based on TLANDEvent 09/11/2011 //////////////////////////////////// #ifndef TKRATTA_PHOTODIODE_H #define TKRATTA_PHOTODIODE_H #include "TClonesArray.h" #include "TKRAT_global.h" // %%%%%%%%%%%%%%%%%%%%%%%%%%% TKRATPhotodiode %%%%%%%%%%%%%%%%%%%%%%%%%%% /// Photodiode class - describe signal obtained from photodiode. /// Photodiode is identified using column, row and photodiode number. class TKRATPhotodiode: public TObject { EnTRow fRow; EnTColumn fColumn; EnTPhotodiode fPhotodiode; ///Int_t fId; ///In between (0 and 105) TArrayI fSignalArray; public: TKRATPhotodiode(); ~TKRATPhotodiode(); TKRATPhotodiode( EnTColumn column, EnTRow row, EnTPhotodiode photodiode ); TKRATPhotodiode( EnTColumn column, EnTRow row, EnTPhotodiode photodiode, Int_t signalArraySize, Int_t * signalArray ); TString ToString( void ); TArrayI * GetSignalArrayPtr( void ) { return &fSignalArray; }; Int_t * GetSignalArrayPtr_Int( void ) { return fSignalArray.GetArray(); }; Int_t GetSignalArraySize( void ) { return fSignalArray.GetSize(); }; EnTRow GetRow_Enum(){ return fRow; }; EnTColumn GetColumn_Enum(){ return fColumn; }; EnTPhotodiode GetPhotodiodeNumber_Enum(){ return fPhotodiode; }; /// Returns identificator fo the row. Range between: {0..4} /// Note: in config file with mapping of the Krakow Array and Enum variable EnTRow the range is between {0..4} Int_t GetRow_Int(); /// Returns identificator fo the column. Range between: {0..6} /// Note: in config file with mapping of the Krakow Array and Enum variable EnTRow the range is in {A,B..G} Int_t GetColumn_Int(); /// Returns identificator fo the photodiode number in module. Range between: {0..2} Int_t GetPhotodiode_Int(); Int_t GetId( void ); void Set( EnTColumn column, EnTRow row, EnTPhotodiode photodiode); void Set( EnTColumn column, EnTRow row, EnTPhotodiode photodiode, Int_t signalArraySize, Int_t * signalArray); void Set( Int_t signalArraySize, Int_t * signalArray); void Clear( void ); ClassDef( TKRATPhotodiode, 1 ); }; #endif /// TKRATTA_PHOTODIODE_H