BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/TrkReco/include/TrkReco/TSegmentCurl.h
Go to the documentation of this file.
1#ifndef TSegmentCurl_FLAG_
2#define TSegmentCurl_FLAG_
3
4#ifdef TRKRECO_DEBUG_DETAIL
5# ifndef TRKRECO_DEBUG
6# define TRKRECO_DEBUG
7# endif
8#endif
9#include "CLHEP/Alist/AList.h"
10#include "TrkReco/TCurlFinderParameters.h"
11#include "TrkReco/TMLink.h"
12
13class TSegmentCurl {
14public:
15 TSegmentCurl( const unsigned superLayerId = 9999, const unsigned max = 9999 );
18
20
21 const unsigned maxLocalLayerId( void ) const;
22 const unsigned superLayerId( void ) const;
23 const unsigned seqOfLayer( const unsigned );
24 const unsigned sizeOfLayer( const unsigned );
25
26 const unsigned maxSeq( void ) const;
27 const unsigned layerIdOfMaxSeq( void );
28 const unsigned numOfSeqOneLayer( void );
29 const unsigned numOfLargeSeqLayer( void );
30
31 void setMaxSeq( const unsigned );
32 void releaseMaxSeq( void );
33
34 inline const unsigned size( void ) { return m_list.length(); }
35
36 const unsigned maxLocalLayerId( const unsigned );
37 const unsigned superLayerId( const unsigned );
38
39 void append( TMLink& );
40 void append( TMLink* );
42
43 void remove( TMLink& );
44 void remove( TMLink* );
46
47 void removeAll( void );
48
49 inline const AList<TMLink>& list( void ) { return m_list; }
50 inline const AList<TMLink>& list( unsigned i ) { return m_layer[i]; }
51
53
54 void dump( void );
55
56 unsigned wires( const unsigned ) const;
57
58 void update( void );
59
60private:
61 // main private members
62 // flag for the update
63 bool m_flagOfUpdate;
64
65 // elements
66 AList<TMLink> m_list;
67 // max local layer id = 0,1,2...
68 unsigned m_MaxLocalLayerId;
69 // super layer id = 0,1,2...
70 unsigned m_superLayerId;
71 // seq. num. of each layer
72 unsigned m_seqOfLayer[4];
73 // size of each layer
74 unsigned m_sizeOfLayer[4]; // Liuqg, origin is 6
75
76 // sub private members
77 AList<TMLink> m_layer[4]; // for each superlayer. Liuqg, origin is 6
78 void calcuSeq( unsigned );
79
80 unsigned m_maxSeq;
81 unsigned m_layerIdOfMaxSeq;
82 unsigned m_numOfSeqOneLayer;
83 unsigned m_numOfLargeSeqLayer;
84};
85
86#endif /* TSegmentCurl_FLAG_ */
#define max(a, b)
void remove(TMLink &)
const AList< TMLink > & list(unsigned i)
void releaseMaxSeq(void)
void append(TMLink &)
void remove(AList< TMLink > &)
const unsigned numOfLargeSeqLayer(void)
TSegmentCurl(TSegmentCurl *)
void remove(TMLink *)
void append(TMLink *)
const unsigned numOfSeqOneLayer(void)
const unsigned layerIdOfMaxSeq(void)
const unsigned superLayerId(const unsigned)
TSegmentCurl(TSegmentCurl &)
void dump(void)
void setMaxSeq(const unsigned)
const unsigned sizeOfLayer(const unsigned)
~TSegmentCurl(void)
TSegmentCurl(const unsigned superLayerId=9999, const unsigned max=9999)
const unsigned maxLocalLayerId(const unsigned)
unsigned wires(const unsigned) const
void append(AList< TMLink > &)
void update(void)
const unsigned maxSeq(void) const
const unsigned superLayerId(void) const
const unsigned maxLocalLayerId(void) const
const unsigned seqOfLayer(const unsigned)
void removeAll(void)
TSegmentCurl & operator=(const TSegmentCurl &)