00001 00008 #ifndef _ISTAGE_H_ 00009 #define _ISTAGE_H_ 1 00010 00011 // Include files 00012 #include "FFTimeStamp.h" 00013 #include "GaudiKernel/IAlgTool.h" 00014 #include "GaudiAlg/GaudiAlgorithm.h" 00015 #include "IStageData.h" 00016 00017 // Declaration of the interface ID ( interface id, major version, minor version) 00018 static const InterfaceID IID_IStage("IStage", 1 , 0); 00019 00020 class IStage : virtual public IAlgTool { 00021 public: 00022 00024 static const InterfaceID& interfaceID() { return IID_IStage; } 00025 00032 virtual FFTimeStamp currentTime() const = 0; 00033 00040 virtual StatusCode nextElement(IStageData*& pIStgData, 00041 bool erase=true) = 0; 00042 00044 virtual StatusCode pushElement(IStageData* pIStgData) = 0; 00045 }; 00046 00047 #endif // _ISTAGE_H_