// // File : VMiEvent.hh // // Purpose: Declaration of Mirror event interface for Tlt // // // $Id: VMiEvent.hh 12082 2011-02-21 17:11:29Z mathes $ // /** @file VMiEvent.hh * @brief Declaration of class VMirrorEvent * * This interface is only thought to be used by the TLT algorithm as * standardized mirror data access of TMirrorEvent or direct hardware readout * via FEReadout. * Therefore the interface does not provide all functionality of TMirrorEvent * or VirtualReadout (!) , but just the functionality for data access, which * these classes have in common, and that are needed by the TLT. * * @author R. Ulrich, FzK */ #ifndef _VMiEvent_hh_ #define _VMiEvent_hh_ #include #include #include #include // --- forward declarations class TMirrorEventHeader; class TMirrorPixelData; #include /** The class VMirrorEvent (invented by R.Ulrich) is needed for merging the * readout and trigger (TLT) software into a simulation framework. */ class VMirrorEvent : public TObject { public: // -------------------------------------------------------------- // this comes from TMirrorEvent /** */ virtual TMirrorEventHeader* GetEventHeader() = 0; /** */ virtual TMirrorPixelData* GetPixelData() = 0; // -------------------------------------------------------------- // this is needed for MiReadout::VirtualReadout /** */ virtual TFADCData* GetFADCData(FdUtil::Fd::PixelNumber pixel) = 0; /** */ virtual TFADCData* GetFADCData(FdUtil::Fd::PixelNumber pixel, TFADCData::FADCTraceInfo info) = 0; /** */ virtual TFADCData::PixelMonitorData GetMonitorData(FdUtil::Fd::PixelNumber) = 0; /** */ virtual TMirrorEventHeader::EMiTriggerSource GetTriggerSource() = 0; ClassDef(VMirrorEvent,MiEVENTVERSIONv1) }; #endif // _VMiEvent_hh_