BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
TofHitCount Class Reference

#include <TofHitCount.h>

Public Member Functions

 TofHitCount ()
 ~TofHitCount ()
void setTofDigi (std::vector< int > &vtofHit)
std::vector< int > & GetbarrelHit1 ()
std::vector< int > & GetbarrelHit2 ()
std::vector< int > & GetecapHit ()
std::vector< int > & GetwcapHit ()

Static Public Member Functions

static TofHitCountget_Tof (void)

Detailed Description

Definition at line 7 of file TofHitCount.h.

Constructor & Destructor Documentation

◆ TofHitCount()

TofHitCount::TofHitCount ( )

Definition at line 31 of file TofHitCount.cxx.

31{}

Referenced by get_Tof().

◆ ~TofHitCount()

TofHitCount::~TofHitCount ( )

Definition at line 32 of file TofHitCount.cxx.

32{}

Member Function Documentation

◆ get_Tof()

TofHitCount * TofHitCount::get_Tof ( void )
static

Definition at line 26 of file TofHitCount.cxx.

26 {
27 if ( !tof_Pointer ) tof_Pointer = new TofHitCount();
28 return tof_Pointer;
29}

Referenced by BesTofTrig::BesTofTrig(), and BesTrigL1::initialize().

◆ GetbarrelHit1()

std::vector< int > & TofHitCount::GetbarrelHit1 ( )
inline

Definition at line 12 of file TofHitCount.h.

12{ return barrelHit1; }

◆ GetbarrelHit2()

std::vector< int > & TofHitCount::GetbarrelHit2 ( )
inline

Definition at line 13 of file TofHitCount.h.

13{ return barrelHit2; }

◆ GetecapHit()

std::vector< int > & TofHitCount::GetecapHit ( )
inline

Definition at line 14 of file TofHitCount.h.

14{ return ecapHit; }

◆ GetwcapHit()

std::vector< int > & TofHitCount::GetwcapHit ( )
inline

Definition at line 15 of file TofHitCount.h.

15{ return wcapHit; }

◆ setTofDigi()

void TofHitCount::setTofDigi ( std::vector< int > & vtofHit)

Definition at line 33 of file TofHitCount.cxx.

33 {
34 barrelHit1.clear();
35 barrelHit2.clear();
36 ecapHit.clear();
37 wcapHit.clear();
38
39 for ( std::vector<int>::iterator iter = vtofHit.begin(); iter != vtofHit.end(); iter++ )
40 {
41 int tofId = ( *iter );
42 int part, layer, im;
43 part = int( tofId / 10000. );
44 layer = int( ( tofId - part * 10000 ) / 1000. );
45 im = int( ( tofId - part * 10000 - layer * 1000 ) / 10. );
46 if ( part == 0 )
47 {
48 // east end cap: 0-47
49 if ( find( ecapHit.begin(), ecapHit.end(), im ) == ecapHit.end() )
50 { ecapHit.push_back( im ); }
51 }
52 else if ( part == 2 )
53 {
54 // west end cap: 0-47
55 if ( find( wcapHit.begin(), wcapHit.end(), im ) == wcapHit.end() )
56 { wcapHit.push_back( im ); }
57 }
58 else
59 {
60 if ( layer == 0 )
61 {
62 // the 1st layer in barrel: 0-87
63 if ( find( barrelHit1.begin(), barrelHit1.end(), im ) == barrelHit1.end() )
64 { barrelHit1.push_back( im ); }
65 }
66 if ( layer == 1 )
67 {
68 // the 2nd layer in barrel: 0-87
69 if ( find( barrelHit2.begin(), barrelHit2.end(), im ) == barrelHit2.end() )
70 { barrelHit2.push_back( im ); }
71 }
72 }
73 }
74}
EvtStreamInputIterator< typename Generator::result_type > iter(Generator gen, int N=0)

The documentation for this class was generated from the following files: