CASToR  1.0
Tomographic Reconstruction (PET/SPECT)
vEvent.hh
Go to the documentation of this file.
00001 
00009 #ifndef VEVENT_HH
00010 #define VEVENT_HH 1
00011 
00012 #include "gVariables.hh"
00013 
00014 
00015 
00023 class vEvent
00024 {
00025   // -------------------------------------------------------------------
00026   // Constructor & Destructor
00027   public:
00032     vEvent();
00036     virtual ~vEvent();
00037 
00038   // -------------------------------------------------------------------
00039   // Public member functions
00040   public:
00048     int AllocateID();
00054     virtual int AllocateSpecificData() = 0;
00059     virtual void Describe() = 0;
00060 
00061   // -------------------------------------------------------------------
00062   // Public Get & Set functions
00063   public:
00068     inline uint32_t GetTimeInMs()
00069            {return m_timeInMs;}
00074     inline uint16_t GetNbLines()
00075            {return m_nbLines;};
00081     inline uint32_t GetID1(int a_line)
00082            {return mp_ID1[a_line];}
00088     inline uint32_t GetID2(int a_line)
00089            {return mp_ID2[a_line];}
00094     inline uint32_t* GetEventID1()
00095            {return mp_ID1;}
00100     inline uint32_t* GetEventID2()
00101            {return mp_ID2;}
00106     inline int GetDataType()
00107            {return m_dataType;}
00112     inline int GetDataMode()
00113            {return m_dataMode;}
00119     inline void SetTimeInMs(uint32_t a_value)
00120            {m_timeInMs = a_value;};
00128     virtual void SetEventValue(int a_bin, FLTNBDATA a_value) = 0; 
00134     inline void SetNbLines(uint16_t a_value)
00135            {m_nbLines = a_value;};
00142     inline void SetID1(int a_line, uint32_t a_value)
00143            {mp_ID1[a_line] = a_value;}
00150     inline void SetID2(int a_line, uint32_t a_value)
00151            {mp_ID2[a_line] = a_value;}
00157     inline void SetVerbose(int a_verbose)
00158            {m_verbose = a_verbose;}
00165     virtual FLTNB GetEventValue(int a_bin) = 0;
00171     virtual FLTNB GetAdditiveCorrections(int a_bin) = 0;
00177     virtual FLTNB GetMultiplicativeCorrections() = 0;
00178 
00179 
00180   // -------------------------------------------------------------------
00181   // Private member functions
00182   private:
00183   
00184   
00185 
00186   // -------------------------------------------------------------------
00187   // Data members
00188   protected:
00189     uint32_t m_timeInMs; 
00190     uint16_t m_nbLines;  
00191     uint32_t* mp_ID1;    
00192     uint32_t* mp_ID2;    
00193     FLTNB m_eventValue;  
00194     int m_dataType;      
00195     int m_dataMode;      
00196     int m_verbose;       
00197 };
00198 
00199 #endif
 All Classes Files Functions Variables Typedefs Defines