AliRoot Core  3abf5b4 (3abf5b4)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMUONBusStruct Class Reference

MUON buspatch structure for tracker. More...

#include <AliMUONBusStruct.h>

Inheritance diagram for AliMUONBusStruct:

Public Member Functions

 AliMUONBusStruct ()
 
virtual ~AliMUONBusStruct ()
 
 AliMUONBusStruct (const AliMUONBusStruct &rhs)
 
AliMUONBusStructoperator= (const AliMUONBusStruct &rhs)
 
Int_t GetDataKey () const
 Return Data key word for bus patch header. More...
 
Int_t GetTotalLength () const
 Return total length of buspatch structure. More...
 
Int_t GetLength () const
 Return length of raw data. More...
 
Int_t GetBusPatchId () const
 Return bus patch id. More...
 
Int_t * GetHeader ()
 Return header. More...
 
Int_t GetBufSize () const
 Return initial size for data array. More...
 
UInt_t * GetData () const
 Return data. More...
 
Int_t GetBlockId () const
 Return block numer for monitoring. More...
 
Int_t GetDspId () const
 Return Dsp number for monitoring. More...
 
Char_t GetParity (Int_t n) const
 
UShort_t GetManuId (Int_t n) const
 
UChar_t GetChannelId (Int_t n) const
 
UShort_t GetCharge (Int_t n) const
 
UInt_t GetData (Int_t n) const
 
void SetDataKey (Int_t d)
 Set Data key word for bus patch header. More...
 
void SetTotalLength (Int_t l)
 Set total length of buspatch structure. More...
 
void SetLength (Int_t l)
 Set length of raw data. More...
 
void SetBusPatchId (Int_t b)
 Set bus patch id. More...
 
void SetData (UInt_t d, Int_t n)
 Set data. More...
 
void SetBlockId (Int_t b)
 Set block numer for monitoring. More...
 
void SetDspId (Int_t d)
 Set Dsp number for monitoring. More...
 
void AddData (UInt_t d)
 
void SetAlloc (Int_t size)
 
Bool_t IsSortable () const
 Return true as Compare() is implemented. More...
 
Int_t Compare (const TObject *obj) const
 
void Clear (Option_t *opt)
 

Static Public Member Functions

static Int_t GetHeaderLength ()
 Return header length in word. More...
 
static UInt_t GetDefaultDataKey ()
 Return default data key word for Bus Patch Header. More...
 

Private Member Functions

void ResizeData (Int_t size=0)
 
void Print (Option_t *opt) const
 

Private Attributes

Int_t fDataKey
 Data key word for bus patch header. More...
 
Int_t fTotalLength
 total length of buspatch structure More...
 
Int_t fLength
 length of raw data More...
 
Int_t fBusPatchId
 bus patch id More...
 
Int_t fBufSize
 initial size for data array More...
 
UInt_t * fData
 data More...
 
Int_t fDspId
 Dsp number for monitoring. More...
 
Int_t fBlkId
 block numer for monitoring More...
 

Static Private Attributes

static const Int_t fgkHeaderLength = 4
 header length in word More...
 
static const UInt_t fgkDefaultDataKey = 0xB000000B
 default data key word for Bus Patch Header More...
 
static const Int_t fgkManuNofChannels
 max number of channels per manu; More...
 

Detailed Description

MUON buspatch structure for tracker.

Bus patch structure for tracker raw data each Dsp contains at most 5 bus patch structure Beside the total length and length of the below data the header of the block contains the bus patch id, trigger words and data structure itself (11bits for manu id, 6 bits for channel id and 12 bits for charge)

Author
Christian Finck

Definition at line 16 of file AliMUONBusStruct.h.

Constructor & Destructor Documentation

AliMUONBusStruct::AliMUONBusStruct ( )

ctor

Definition at line 47 of file AliMUONBusStruct.cxx.

AliMUONBusStruct::~AliMUONBusStruct ( )
virtual

dtor

Definition at line 66 of file AliMUONBusStruct.cxx.

AliMUONBusStruct::AliMUONBusStruct ( const AliMUONBusStruct rhs)

copy ctor

Definition at line 116 of file AliMUONBusStruct.cxx.

Member Function Documentation

void AliMUONBusStruct::AddData ( UInt_t  d)

could have used class from ROOT but the structure must be as simple as possible to be written on disc blockwise, not so sure ?

Definition at line 87 of file AliMUONBusStruct.cxx.

Referenced by AliMUONRawWriter::Digits2BusPatchMap().

void AliMUONBusStruct::Clear ( Option_t *  opt)

clear delete the allocated memory

Definition at line 170 of file AliMUONBusStruct.cxx.

Int_t AliMUONBusStruct::Compare ( const TObject *  obj) const

sort bus patch by bus patch number important for AliMUONRawWriter

Definition at line 159 of file AliMUONBusStruct.cxx.

Int_t AliMUONBusStruct::GetBlockId ( ) const
inline

Return block numer for monitoring.

Definition at line 48 of file AliMUONBusStruct.h.

Int_t AliMUONBusStruct::GetBufSize ( ) const
inline

Return initial size for data array.

Definition at line 44 of file AliMUONBusStruct.h.

Referenced by AliMUONPayloadTracker::Decode().

Int_t AliMUONBusStruct::GetBusPatchId ( ) const
inline

Return bus patch id.

Definition at line 37 of file AliMUONBusStruct.h.

Referenced by AliMUONPayloadTracker::CheckDataParity(), and AliMUONRawStreamTracker::Next().

UChar_t AliMUONBusStruct::GetChannelId ( Int_t  n) const

get channel Id

Definition at line 214 of file AliMUONBusStruct.cxx.

Referenced by AliMUONPayloadTracker::CheckDataParity(), and AliMUONRawStreamTracker::Next().

UShort_t AliMUONBusStruct::GetCharge ( Int_t  n) const

get charge (in ADC)

Definition at line 226 of file AliMUONBusStruct.cxx.

Referenced by AliMUONRawStreamTracker::Next().

UInt_t* AliMUONBusStruct::GetData ( ) const
inline
UInt_t AliMUONBusStruct::GetData ( Int_t  n) const

get data

Definition at line 178 of file AliMUONBusStruct.cxx.

Int_t AliMUONBusStruct::GetDataKey ( ) const
inline

Return Data key word for bus patch header.

Definition at line 31 of file AliMUONBusStruct.h.

static UInt_t AliMUONBusStruct::GetDefaultDataKey ( )
inlinestatic

Return default data key word for Bus Patch Header.

Definition at line 27 of file AliMUONBusStruct.h.

Referenced by AliMUONPayloadTracker::Decode(), AliMUONRawWriter::Digits2BusPatchMap(), and AliMUONRawWriter::WriteTrackerDDL().

Int_t AliMUONBusStruct::GetDspId ( ) const
inline

Return Dsp number for monitoring.

Definition at line 50 of file AliMUONBusStruct.h.

Int_t* AliMUONBusStruct::GetHeader ( )
inline
static Int_t AliMUONBusStruct::GetHeaderLength ( )
inlinestatic

Return header length in word.

Definition at line 25 of file AliMUONBusStruct.h.

Referenced by AliMUONPayloadTracker::Decode(), and AliMUONRawWriter::WriteTrackerDDL().

Int_t AliMUONBusStruct::GetLength ( ) const
inline
UShort_t AliMUONBusStruct::GetManuId ( Int_t  n) const

get manu Id

Definition at line 202 of file AliMUONBusStruct.cxx.

Referenced by AliMUONPayloadTracker::CheckDataParity(), and AliMUONRawStreamTracker::Next().

Char_t AliMUONBusStruct::GetParity ( Int_t  n) const

get parity

Definition at line 190 of file AliMUONBusStruct.cxx.

Referenced by AliMUONPayloadTracker::CheckDataParity().

Int_t AliMUONBusStruct::GetTotalLength ( ) const
inline

Return total length of buspatch structure.

Definition at line 33 of file AliMUONBusStruct.h.

Referenced by AliMUONPayloadTracker::Decode().

Bool_t AliMUONBusStruct::IsSortable ( ) const
inline

Return true as Compare() is implemented.

Definition at line 81 of file AliMUONBusStruct.h.

AliMUONBusStruct & AliMUONBusStruct::operator= ( const AliMUONBusStruct rhs)

assignment operator

Definition at line 136 of file AliMUONBusStruct.cxx.

void AliMUONBusStruct::Print ( Option_t *  opt) const
private

print out

Definition at line 238 of file AliMUONBusStruct.cxx.

void AliMUONBusStruct::ResizeData ( Int_t  size = 0)
private

In case of resizing the vector the most simplest way to do it

Definition at line 99 of file AliMUONBusStruct.cxx.

Referenced by AddData(), and SetAlloc().

void AliMUONBusStruct::SetAlloc ( Int_t  size)

Allocate size return if size < fBufSize

Definition at line 75 of file AliMUONBusStruct.cxx.

Referenced by AliMUONPayloadTracker::Decode(), and AliMUONRawStreamTrackerHP::GetDDLTracker().

void AliMUONBusStruct::SetBlockId ( Int_t  b)
inline

Set block numer for monitoring.

Definition at line 72 of file AliMUONBusStruct.h.

Referenced by AliMUONPayloadTracker::Decode(), and AliMUONRawStreamTrackerHP::GetDDLTracker().

void AliMUONBusStruct::SetBusPatchId ( Int_t  b)
inline

Set bus patch id.

Definition at line 66 of file AliMUONBusStruct.h.

Referenced by AliMUONRawWriter::Digits2BusPatchMap().

void AliMUONBusStruct::SetData ( UInt_t  d,
Int_t  n 
)
inline

Set data.

Definition at line 70 of file AliMUONBusStruct.h.

void AliMUONBusStruct::SetDataKey ( Int_t  d)
inline

Set Data key word for bus patch header.

Definition at line 60 of file AliMUONBusStruct.h.

Referenced by AliMUONRawWriter::Digits2BusPatchMap().

void AliMUONBusStruct::SetDspId ( Int_t  d)
inline

Set Dsp number for monitoring.

Definition at line 74 of file AliMUONBusStruct.h.

Referenced by AliMUONPayloadTracker::Decode(), and AliMUONRawStreamTrackerHP::GetDDLTracker().

void AliMUONBusStruct::SetLength ( Int_t  l)
inline

Set length of raw data.

Definition at line 64 of file AliMUONBusStruct.h.

Referenced by AliMUONRawWriter::Digits2BusPatchMap().

void AliMUONBusStruct::SetTotalLength ( Int_t  l)
inline

Set total length of buspatch structure.

Definition at line 62 of file AliMUONBusStruct.h.

Member Data Documentation

Int_t AliMUONBusStruct::fBlkId
private

block numer for monitoring

Definition at line 100 of file AliMUONBusStruct.h.

Referenced by GetBlockId(), operator=(), and SetBlockId().

Int_t AliMUONBusStruct::fBufSize
private

initial size for data array

Definition at line 95 of file AliMUONBusStruct.h.

Referenced by AddData(), GetBufSize(), operator=(), Print(), ResizeData(), and SetAlloc().

Int_t AliMUONBusStruct::fBusPatchId
private

bus patch id

Definition at line 89 of file AliMUONBusStruct.h.

Referenced by Compare(), GetBusPatchId(), operator=(), Print(), and SetBusPatchId().

UInt_t* AliMUONBusStruct::fData
private
Int_t AliMUONBusStruct::fDataKey
private

Data key word for bus patch header.

Definition at line 86 of file AliMUONBusStruct.h.

Referenced by GetDataKey(), GetHeader(), operator=(), Print(), and SetDataKey().

Int_t AliMUONBusStruct::fDspId
private

Dsp number for monitoring.

Definition at line 99 of file AliMUONBusStruct.h.

Referenced by GetDspId(), operator=(), and SetDspId().

const UInt_t AliMUONBusStruct::fgkDefaultDataKey = 0xB000000B
staticprivate

default data key word for Bus Patch Header

Definition at line 92 of file AliMUONBusStruct.h.

Referenced by GetDefaultDataKey().

const Int_t AliMUONBusStruct::fgkHeaderLength = 4
staticprivate

header length in word

Definition at line 91 of file AliMUONBusStruct.h.

Referenced by AddData(), and GetHeaderLength().

const Int_t AliMUONBusStruct::fgkManuNofChannels
staticprivate

max number of channels per manu;

Definition at line 93 of file AliMUONBusStruct.h.

Int_t AliMUONBusStruct::fLength
private
Int_t AliMUONBusStruct::fTotalLength
private

total length of buspatch structure

Definition at line 87 of file AliMUONBusStruct.h.

Referenced by AddData(), GetTotalLength(), operator=(), Print(), and SetTotalLength().


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