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

#include <MucChain.h>

Public Member Functions

 MucChain (int id, string name, int module, int socket, int fecOrder)
 ~MucChain ()
int GetID ()
int GetPart ()
int GetSegment ()
int GetFecTotal ()
int GetFecOrder ()
string GetName ()
vector< MucFecGetFecVect ()
MucFecGetFec (int fecId)
int GetFecLayerID (int fecID)
int GetFirstStripID (int fecID)
void ReMap (string name, int module, int socket)
void SetFecOrder (int fecOrder)
void SetStripOrder (int stripOrder)
void SetStripOrder (int fecID, int stripOrder)
void ArrayInvert (int *array, int number)

Detailed Description

Definition at line 52 of file MucChain.h.

Constructor & Destructor Documentation

◆ MucChain()

MucChain::MucChain ( int id,
string name,
int module,
int socket,
int fecOrder )

Definition at line 17 of file MucChain.cxx.

17 {
18 // cout << "MucChain:: Create chain : " << endl;
19 // cout << "ID: " << id << "\tModule: " << module << "\tSocket: " << socket << "\tFecOrder: "
20 // << fecOrder << endl;
21 m_ID = id;
22 m_Name = name;
23 m_Module = module;
24 m_Socket = socket;
25 m_FecOrder = fecOrder;
26
27 Mapping();
28}

◆ ~MucChain()

MucChain::~MucChain ( )

Definition at line 31 of file MucChain.cxx.

31 {
32 // cout << "MucChain:: Destructor()." <<endl;
33 delete[] m_FirstStripID;
34 delete[] m_FecLayerID;
35 delete[] m_StripOrder;
36
37 m_FecVect.clear();
38}

Member Function Documentation

◆ ArrayInvert()

void MucChain::ArrayInvert ( int * array,
int number )

Definition at line 70 of file MucChain.cxx.

70 {
71 int temp;
72 for ( int i = 0; i < number / 2; i++ )
73 {
74 temp = array[i];
75 array[i] = array[number - 1 - i];
76 array[number - 1 - i] = temp;
77 }
78}

◆ GetFec()

MucFec * MucChain::GetFec ( int fecId)
inline

Definition at line 66 of file MucChain.h.

66{ return &m_FecVect[fecId]; }

◆ GetFecLayerID()

int MucChain::GetFecLayerID ( int fecID)
inline

Definition at line 67 of file MucChain.h.

67{ return m_FecLayerID[fecID]; }

◆ GetFecOrder()

int MucChain::GetFecOrder ( )
inline

Definition at line 62 of file MucChain.h.

62{ return m_FecOrder; }

◆ GetFecTotal()

int MucChain::GetFecTotal ( )
inline

Definition at line 61 of file MucChain.h.

61{ return m_FecTotal; }

◆ GetFecVect()

vector< MucFec > MucChain::GetFecVect ( )
inline

Definition at line 64 of file MucChain.h.

64{ return m_FecVect; }

◆ GetFirstStripID()

int MucChain::GetFirstStripID ( int fecID)
inline

Definition at line 68 of file MucChain.h.

68{ return m_FirstStripID[fecID]; }

◆ GetID()

int MucChain::GetID ( )
inline

Definition at line 58 of file MucChain.h.

58{ return m_ID; }

◆ GetName()

string MucChain::GetName ( )
inline

Definition at line 63 of file MucChain.h.

63{ return m_Name; }

◆ GetPart()

int MucChain::GetPart ( )
inline

Definition at line 59 of file MucChain.h.

59{ return m_Part; }

◆ GetSegment()

int MucChain::GetSegment ( )
inline

Definition at line 60 of file MucChain.h.

60{ return m_Segment; }

◆ ReMap()

void MucChain::ReMap ( string name,
int module,
int socket )

Definition at line 41 of file MucChain.cxx.

41 {
42 m_Name = name;
43 m_Module = module;
44 m_Socket = socket;
45
46 MucChain::Mapping();
47}

◆ SetFecOrder()

void MucChain::SetFecOrder ( int fecOrder)

Definition at line 49 of file MucChain.cxx.

49 {
50 m_FecOrder = fecOrder;
51 MucChain::InitFecVect();
52}

◆ SetStripOrder() [1/2]

void MucChain::SetStripOrder ( int fecID,
int stripOrder )

Definition at line 64 of file MucChain.cxx.

64 {
65 // Decode FecVect member number by fecID
66 int i = m_FecOrder * ( fecID - ( ( 1 - m_FecOrder ) / 2 ) * ( m_FecTotal - 1 ) );
67 m_FecVect[i].SetStripOrder( stripOrder );
68}

◆ SetStripOrder() [2/2]

void MucChain::SetStripOrder ( int stripOrder)

Definition at line 55 of file MucChain.cxx.

55 {
56 // cout << "MucChain:: SetStripOrder( int )." << endl;
57 int order;
58 if ( stripOrder == 0 ) order = DEFAULT_STRIP_ORDER;
59 else order = stripOrder;
60
61 for ( int i = 0; i < m_FecTotal; i++ ) m_StripOrder[i] = order;
62}

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