emcTowerContent.h

Go to the documentation of this file.
00001 #ifndef __EMCTOWERCONTENT_H__
00002 #define __EMCTOWERCONTENT_H__
00003 
00004 #include "PHObject.h"
00005 #include <iostream>
00006 
00020 class emcTowerContent : public PHObject 
00021 {
00022 public:
00023 
00024   virtual ~emcTowerContent();
00025 
00027   virtual emcTowerContent* clone() const { warning("clone"); return 0; }
00028 
00030   virtual emcTowerContent* create() const { warning("create") ; return 0; }
00031 
00035   virtual int ADC(void) const { warning("ADC"); return 0; }
00036 
00039   virtual int AMUPre(void) const { warning("AMUPre"); return 0; }
00040 
00043   virtual int AMUPost(void) const { warning("AMUPost"); return 0; }
00044 
00047   virtual int AMUTAC(void) const { warning("AMUTAC"); return 0; }
00048 
00050   virtual int BeamClock(void) const { warning("BeamClock"); return 0; }
00051 
00053   virtual int Channel(void) const { warning("Channel"); return 0; }
00054 
00056   virtual int DataError(void) const { warning("DataError"); return 0; }
00057   
00059   virtual float Energy(void) const { warning("Energy"); return 0; }
00060 
00065   virtual unsigned int ErrorNeighbours(void) const 
00066   { warning("ErrorNeighbours"); return 0; }
00067 
00069   virtual int FEM(void) const { warning("FEM"); return 0; }
00070 
00075 
00076   virtual bool hasCalib(void) const { return false; }
00077 
00079   virtual bool hasDC(void) const { return false; }
00080 
00084   virtual bool hasGain(void) const { return false; }
00085 
00088   virtual bool hasMerSimStatus(void) const { return false; }
00089 
00091   virtual bool hasRaw(void) const { return false; }
00092 
00096   virtual bool hasReference(void) const;
00098 
00105   
00107   virtual bool canHaveCalib() const { return false; }
00108 
00110   virtual bool canHaveDC() const { return false; }
00111 
00113   virtual bool canHaveGain() const { return false; }
00114 
00116   virtual bool canHaveMerSimStatus() const { return false; }
00117 
00121   virtual bool canHaveRaw() const { return false; }
00123 
00125   virtual int HG(void) const { warning("HG"); return 0; }
00126 
00128   virtual int HGPost(void) const { warning("HGPost"); return 0; }
00129 
00131   virtual int HGPre(void) const { warning("HGPre"); return 0; }
00132 
00134   virtual int HGPP(void) const;
00135 
00137   virtual float Gain(void) const { warning("Gain"); return 0; }
00138 
00140   virtual void identify(std::ostream& os=std::cout) const;
00141 
00143   virtual bool isSimulated(void) const 
00144   { warning("isSimulated"); return false; }
00145 
00147   virtual bool isMerged(void) const { warning("isMerged"); return false; }
00148 
00150   virtual bool isReference(void) const;
00151 
00153   virtual int isValid() const;
00154 
00156   virtual bool isZero(void) const { warning("isZero"); return 0; }
00157 
00159   virtual int LG(void) const { warning("LG"); return 0; }
00160 
00162   virtual int LGPost(void) const { warning("LGPost"); return 0; }
00163 
00165   virtual int LGPre(void) const { warning("LGPre"); return 0; }
00166 
00168   virtual int LGPP(void) const;
00169 
00171   virtual void print(std::ostream& /*out*/=std::cout, int /*level*/=0) const 
00172   { warning("print"); }
00173 
00175   virtual emcTowerContent* Reference(void) const;
00176 
00180   virtual void SetADCTDC(int /*adc*/, int /*tdc*/, int /*hg*/=0, int /*lg*/=0) 
00181   { warning("SetADCTDC"); }
00182 
00186   virtual void SetCalibrated(float /*energy*/, float /*tof*/) 
00187   { warning("SetCalibrated"); }
00188 
00190   virtual void SetDataError(int /*dataerror*/) { warning("SetDataError"); }
00191 
00193   virtual void SetID(int /*fem*/, int /*channel*/) { warning("SetID"); }
00194 
00196   virtual void SetGain(float /*gain*/) { warning("SetGain"); }
00197 
00199   virtual void SetNeighbours(unsigned int /*_error*/, 
00200                              unsigned int /*_warning*/) 
00201   { warning("SetNeighbours"); }
00202 
00206   virtual void SetMerSimStatus(bool /*ismerged*/, bool /*issimulated*/)
00207   { warning("SetMerSimStatus"); }
00208 
00212   virtual void SetRaw(int /*hgpost*/, int /*hgpre*/, 
00213                       int /*lgpost*/, int /*lgpre*/,
00214                       int /*tac*/,
00215                       int /*amupre*/=0,
00216                       int /*amupost*/=0,
00217                       int /*amutac*/=0,
00218                       int /*beamclock*/=0) { warning("SetRaw"); }
00219 
00221   virtual void SetSimFrac(float /*simfrac*/) { warning("SetSimFrac"); }
00222 
00224   virtual void SetToF(float /*tof*/) { warning("SetTOF"); }
00225 
00228   virtual float SimFrac() const { return 0; }
00229 
00231   virtual int TAC(void) const { warning("TAC"); return 0; }
00232 
00234   virtual int TDC(void) const { warning("TDC"); return 0; }
00235 
00237   virtual float ToF(void) const { warning("TOF"); return 0; }
00238 
00240   virtual float UncorrectedToF() const { warning("UncorrectedToF"); return 0; }
00241 
00243   virtual int TowerID(void) const { warning("TowerID"); return 0; }    
00244 
00246   int TowerId(void) const { return TowerID(); }
00247 
00249   int towerid(void) const { return TowerID(); }
00250 
00252   virtual unsigned int WarnNeighbours(void) const 
00253   { warning("WarnNeighbours"); return 0; }  
00254 
00256   virtual void Zero(void) { warning("Zero"); }
00257 
00258   void ShutUp(const int i = 1);
00259 
00260 protected:
00263   emcTowerContent& operator=(const emcTowerContent& rhs);
00264 
00265 private:
00266 
00267   void warning(const char*) const;
00268 
00269   ClassDef(emcTowerContent,0) // EMCAL Tower data (ABC)
00270 
00271 };
00272 
00273 inline 
00274 std::ostream& operator<<(std::ostream& out, const emcTowerContent& tc)
00275 {
00276   tc.print(out); 
00277   return out;
00278 }
00279 
00280 #endif