#ifndef TShowerState_hxx_seen #define TShowerState_hxx_seen #include "IReconState.hxx" #include "IReconNode.hxx" namespace COMET { class IShowerState; } /// A state holding the parameters associated with a IReconShower. class COMET::IShowerState: public IReconState, virtual public IMReconState, virtual public IMEDepositState, virtual public IMPositionDirectionState, virtual public IMConeState { public: IShowerState(); IShowerState(const IShowerState& init); virtual ~IShowerState(); virtual IShowerState& operator=(const IShowerState& rhs); /// Return the number of entries for the Direction in the ICorrValues /// vector. static int GetSize() { return IMEDepositState::GetSize() + IMPositionDirectionState::GetSize() + IMConeState::GetSize(); } /// The projection operator to get the full state. static COMET::ICorrValues ProjectState(const COMET::IHandle& state); ClassDef(IShowerState,1); }; #endif