Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

TMuiRoadO.h

Go to the documentation of this file.
00001 // Interface Object Class : TMuiRoadO
00002 // Author: Jason Newby
00003 // Data: 02/12/03
00004 // Description: Class for muon identifier road
00005 
00006 #ifndef _TMUIROADO_H_
00007 #define _TMUIROADO_H_
00008 
00009 // CINT compatible headers//
00010 //
00011 #include<TDataType.h>
00012 #include<PHKey.hh>
00013 #include<PHException.h>
00014 #include<TMutFitPar.hh>
00015 #include<MUIOO.h>
00016 #include<PHPoint.h>
00017 
00018 
00020 
00021 
00037 class TMuiRoadO : public PHKey {
00038 
00039 public:
00040 
00042 
00043   
00045   TMuiRoadO(){;}  
00046   
00048   virtual ~TMuiRoadO(){;}
00049   
00051   TMuiRoadO(const Key& key) :
00052     PHKey(key){;}
00053   
00055   TMuiRoadO(const Key&,
00056               UShort_t arm,
00057               UShort_t index){;}
00058   
00060 
00062 
00063 
00065   virtual TMutFitPar get_fit_par() const { return TMutFitPar();}
00066 
00068   virtual const TMutFitPar* get_const_fitpar() const { return 0;}
00069 
00071   virtual void set_fit_par(const TMutFitPar& fit_par) {}
00072 
00074 
00076 
00077   
00082   virtual PHPoint get_gap0_point() const { return PHPoint(); } 
00083 
00085   virtual void set_depth( UShort_t depth) {}
00086 
00088   virtual void set_nhit( UShort_t nhit) {}
00089 
00091   virtual void set_max_hit_plane( UShort_t maxhit ) {}
00092 
00094   virtual void set_road_quality( Float_t quality) {}
00095 
00097   virtual void set_ghost_flag( UShort_t ghostflag) {}
00098 
00100   virtual void set_gapbit( UShort_t gapbit) {}
00101 
00103   virtual void set_group( UShort_t group) {}
00104 
00106   virtual void set_golden( UShort_t golden) {}
00107 
00109   virtual void set_freedom( UShort_t freedom) {}
00110 
00112   virtual UShort_t get_depth() const { return 0;}
00113 
00115   virtual UShort_t get_nhit() const {return 0;}
00116 
00118   virtual UShort_t get_max_hit_plane() const {return 0;}
00119 
00121   virtual Float_t get_road_quality() const {return 0;}
00122 
00124   virtual UShort_t get_freedom() const {return 0;}
00125 
00127   virtual UShort_t get_ghost_flag() const {return 0;}
00128 
00130   virtual UShort_t get_gapbit() const {return 0;}
00131 
00133   virtual UShort_t get_group() const {return 0;}
00134 
00136   virtual UShort_t get_golden() const {return 0;}
00137 
00139 
00141 
00142 
00143   virtual void set_arm( UShort_t arm) {}
00144 
00146   virtual void set_index( UShort_t index) {}
00147 
00149   virtual UShort_t get_arm() const {return 0;}
00150 
00152   virtual UShort_t get_index() const {return 0;}
00153 
00155 
00157 
00158 
00159   virtual void print(std::ostream& os = std::cout) const {}
00160 
00162 
00163   ClassDef(TMuiRoadO,1)
00164 
00165 };
00166 
00167 
00168 class TMuiRoadO_v1 : public TMuiRoadO {
00169 
00170 public:
00171 
00172   TMuiRoadO_v1();  
00173 
00174   virtual ~TMuiRoadO_v1(){;}
00175 
00176   TMuiRoadO_v1(const Key&,
00177                  UShort_t arm,
00178                  UShort_t index);  
00179 
00180 
00181   TMuiRoadO_v1(const TMuiRoadO*);  
00182 
00183   TMuiRoadO_v1(const TMuiRoadO&);  
00184 
00185   TMutFitPar get_fit_par() const {return _fit_par;}
00186   const TMutFitPar* get_const_fitpar() const {return &_fit_par;}
00187 
00188 
00189   PHPoint get_gap0_point() const;
00190   
00191   void set_fit_par(const TMutFitPar& fit_par) {_fit_par = fit_par;}
00192   
00193   void set_depth( UShort_t depth) { _depth=depth;}
00194 
00195   void set_nhit( UShort_t nhit) { _nhit=nhit;}
00196 
00197   void set_max_hit_plane( UShort_t maxhit ) { _max_hit_plane=maxhit;}
00198   
00199   void set_road_quality( Float_t quality) { _road_quality=quality;}
00200 
00201   void set_ghost_flag( UShort_t ghostflag) { _ghost_flag=ghostflag;}
00202 
00203   void set_gapbit( UShort_t gapbit) { _gapbit=gapbit;}
00204 
00205   void set_group( UShort_t group) { _group=group;}
00206 
00207   void set_golden( UShort_t golden) { _golden=golden;}
00208   
00209   void set_freedom( UShort_t freedom) { _freedom=freedom;}
00210 
00211   UShort_t get_depth() const { return _depth;}
00212 
00213   UShort_t get_nhit() const { return _nhit;}
00214 
00215   UShort_t get_max_hit_plane() const { return _max_hit_plane;}
00216 
00217   Float_t get_road_quality() const { return _road_quality;}
00218 
00219   UShort_t get_freedom() const { return _freedom;}
00220 
00221   UShort_t get_ghost_flag() const {return _ghost_flag;}
00222 
00223   UShort_t get_gapbit() const {return _gapbit;}
00224 
00225   UShort_t get_group() const {return _group;}
00226 
00227   UShort_t get_golden() const {return _golden;}
00228 
00229   void set_arm( UShort_t arm) { _arm=arm;}
00230 
00231   void set_index( UShort_t index) { _index=index;}
00232 
00233   UShort_t get_arm() const {return _arm;}
00234 
00235   UShort_t get_index() const {return _index;}
00236 
00237   void print(std::ostream& os = std::cout) const {
00238     MUIOO::PRINT(os,GetName());
00239     os << " arm: " << _arm << std::endl;
00240     os << " index: " << _index << std::endl;
00241     os << " depth: " << _depth << std::endl;
00242     os << " quality: " << _road_quality << std::endl;
00243     os << " freedom: " << _freedom << std::endl;
00244     os << " ghostflag: " << _ghost_flag << std::endl;
00245     os << " group: " << _group << std::endl;
00246     os << " golden: " << _golden << std::endl;
00247     os << " nhit: " << _nhit << std::endl;
00248     os << " chi_square: " << _fit_par.get_chi_square() << " " << std::endl;
00249     os << " ref position: " << _fit_par.get_x() << " " <<
00250       _fit_par.get_y() << " " <<
00251       _fit_par.get_z() << " " << std::endl;
00252 
00253     os << " ref direction: " 
00254        << _fit_par.get_dxdz() << " " 
00255        << _fit_par.get_dydz() << " "
00256        << std::endl;
00257 
00258     os << " gap0 point: " 
00259        << get_gap0_point().getX() << " "
00260        << get_gap0_point().getY() << " "
00261        << get_gap0_point().getZ() << std::endl;
00262     
00263     MUIOO::PRINT(os,"**");
00264   }
00265   
00266 private:
00267   
00268   UShort_t _arm;
00269   UShort_t _index;
00270   
00271   TMutFitPar _fit_par;
00272   
00273   UShort_t _depth;
00274   UShort_t _nhit;
00275   UShort_t _max_hit_plane;
00276   Float_t _road_quality;
00277   UShort_t _freedom;
00278   UShort_t _ghost_flag;
00279   UShort_t _gapbit;
00280   UShort_t _group;
00281   UShort_t _golden;
00282  
00283   ClassDef(TMuiRoadO_v1,1)
00284 };
00285 
00286 #endif /* _TMUIROADO_H_ */
00287               
00288 
00289 
00290 
00291 
00292 
00293 
00294 
00295 

MUIOO: PHENIX Muon Identifier Analysis Framework. Documentation by doxygen
Last modified: