#ifndef EVENT_H #define EVENT_H #include "DataSvc/Ref.h" #include "Sector.h" namespace pool_tutorial { // Simple event class associated to the data from the // various detector elements. class Event { public: // Empty default constructor Event(); // Constructor initializing the event number explicit Event( int eventNumber ); // Destructor virtual ~Event(); // Copy constructor Event( const Event& rhs ); // Assignment operator Event& operator=( const Event& rhs ); // Sets the reference to the ECAL data void setECalData( const pool::Ref< Sector >& ecalData ); // Returns the ECAL data const Sector& ecalData() const; Sector& ecalData(); // Sets the reference to the HCAL data void setHCalData( const pool::Ref< Sector >& hcalData ); // Returns the HCAL data const Sector& hcalData() const; Sector& hcalData(); // Returns the event number int eventNumber() const; private: // The event number int m_eventNumber; // The reference to the ECAL data pool::Ref< Sector > m_ecalDataRef; // The reference to the HCAL data pool::Ref< Sector > m_hcalDataRef; }; } #endif