00001 #ifndef __emcClusterContainer_h__ 00002 #define __emcClusterContainer_h__ 00003 00004 class emcClusterContent; 00005 00006 #include <iosfwd> 00007 #include "phool.h" 00008 #include "PHObject.h" 00009 00016 class TClonesArray; 00017 00018 class emcClusterContainer : public PHObject 00019 { 00020 public: 00021 00022 virtual ~emcClusterContainer(){} 00023 00025 virtual emcClusterContent* addCluster(unsigned int i) 00026 { PHOOL_VIRTUAL_WARNING; return 0; } 00027 00031 virtual emcClusterContent* addCluster(unsigned int i, 00032 const emcClusterContent& c) 00033 { PHOOL_VIRTUAL_WARNING; return 0; } 00034 00035 virtual emcClusterContent* addCluster(const emcClusterContent &c); 00036 00037 // the size you'll never exceed for this object. 00038 virtual unsigned int capacity(void) const 00039 { PHOOL_VIRTUAL_WARNING; return 0; } 00040 00041 virtual emcClusterContainer* clone(void) const 00042 { PHOOL_VIRTUAL_WARNING; return 0; } 00043 00044 virtual emcClusterContainer* create(void) const 00045 { PHOOL_VIRTUAL_WARNING; return 0; } 00046 00047 virtual emcClusterContent* findCluster(int clusterid) const 00048 { PHOOL_VIRTUAL_WARNING; return 0; } 00049 00050 virtual emcClusterContent* getCluster(unsigned int i) const 00051 { PHOOL_VIRTUAL_WARNING; return 0; } 00052 00053 virtual void identify(std::ostream& os=std::cout) const 00054 { PHOOL_VIRTUAL_WARNING; } 00055 00056 virtual int isValid() const 00057 { PHOOL_VIRTUAL_WARNING; return 0; } 00058 00059 virtual void print(std::ostream& os=std::cout) const; 00060 00061 virtual bool removeCluster(unsigned int i) 00062 { PHOOL_VIRTUAL_WARNING; return false; } 00063 00064 virtual bool resize(unsigned int newsize) 00065 { PHOOL_VIRTUAL_WARNING; return false; } 00066 00067 virtual void Reset() 00068 { PHOOL_VIRTUAL_WARNING; } 00069 00070 // the actual size of the object. 00071 virtual unsigned int size(void) const 00072 { PHOOL_VIRTUAL_WARNING; return 0; } 00073 00074 protected: 00075 virtual TClonesArray *GetTCArray() const {return 0;} 00076 00079 emcClusterContainer& operator=(const emcClusterContainer&); 00080 00081 private: 00082 00083 ClassDef(emcClusterContainer,0) // Array of emcClusterContainer (ABC) 00084 00085 }; 00086 00087 #endif