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

(Legacy) implementation of AliMUONVDigitStore More...

#include <AliMUONDigitStoreV1.h>

Inheritance diagram for AliMUONDigitStoreV1:

Public Member Functions

 AliMUONDigitStoreV1 ()
 
 AliMUONDigitStoreV1 (TRootIOCtor *dummy)
 
 AliMUONDigitStoreV1 (const AliMUONDigitStoreV1 &rhs)
 
AliMUONDigitStoreV1operator= (const AliMUONDigitStoreV1 &rhs)
 
virtual ~AliMUONDigitStoreV1 ()
 
virtual void Clear (Option_t *opt="")
 Clear ourselves (i.e. Reset) More...
 
virtual Bool_t CanConnect () const
 Whether the Connect(TTree&) method is implemented. More...
 
virtual AliMUONVDigitStoreCreate () const
 Create an (empty) object of the same concrete class as *this. More...
 
virtual Bool_t Connect (TTree &tree, Bool_t alone=kTRUE) const
 Connect us to a TTree (only valid if CanConnect()==kTRUE) More...
 
virtual AliMUONVDigitCreateDigit (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode) const
 Create a digit. More...
 
virtual AliMUONVDigitAdd (const AliMUONVDigit &digit, EReplacePolicy replace=kDeny)
 
virtual TIterator * CreateIterator () const
 Create an iterator to loop over all our digits. More...
 
virtual TIterator * CreateTrackerIterator () const
 Create an iterator to loop over tracker digits only. More...
 
virtual TIterator * CreateTriggerIterator () const
 Create an iterator to loop over trigger digits only. More...
 
virtual TIterator * CreateIterator (Int_t firstDetElemId, Int_t lastDetElemId, Int_t cathode=2) const
 
virtual AliMUONVDigitFindObject (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode) const
 Find a digit by the quadruplet (de,manu,channel,cathode) More...
 
virtual Int_t GetSize () const
 Number of digits we store. More...
 
virtual AliMUONVDigitRemove (AliMUONVDigit &digit)
 Remove an element. More...
 
Bool_t HasMCInformation () const
 Whether we have any MC related information (e.g. at least one simulated digit) More...
 
- Public Member Functions inherited from AliMUONVDigitStore
 AliMUONVDigitStore ()
 
virtual ~AliMUONVDigitStore ()
 
virtual Bool_t Add (TObject *object)
 Add an object, if it is of the right class. More...
 
virtual AliMUONVDigitAdd (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode, EReplacePolicy replace)
 Add a digit and return the newly created digit. More...
 
virtual AliMUONVDigitFindObject (const TObject *object) const
 Find an object (default is to forward to FindObject(object->GetUniqueID()) More...
 
virtual AliMUONVDigitFindObject (UInt_t uniqueID) const
 Find an object by its uniqueID. More...
 
virtual Int_t GetSize (Int_t detElemId) const
 Number of digits in a given detection element. More...
 
virtual Int_t GetSize (Int_t detElemId, Int_t cathode) const
 Number of digits in a given detection element and a given cathode (2 for both cathodes) More...
 
- Public Member Functions inherited from AliMUONVStore
 AliMUONVStore ()
 
virtual ~AliMUONVStore ()
 
virtual TObject * FindObject (const char *name) const
 Find an object by name. More...
 
virtual TObject * FindObject (Int_t i, Int_t j) const
 Find an object using 2 ids. More...
 
virtual Bool_t IsEmpty () const
 Whether we are empty or not. More...
 
virtual void Print (Option_t *wildcard="") const
 Print all objects whose name matches wildcard. More...
 
virtual void Print (Option_t *wildcard, Option_t *opt) const
 Print, with option, all objects whose name matches wildcard. More...
 

Private Member Functions

TObject ** ChamberDigitsPtr (Int_t chamberId) const
 
TClonesArray * ChamberDigits (Int_t chamberId)
 
const TClonesArray * ChamberDigits (Int_t chamberId) const
 
AliMUONVDigitFind (const AliMUONVDigit &digit, Int_t &index) const
 
AliMUONVDigitFindIndex (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode, Int_t &index) const
 

Private Attributes

TObjArrayfDigits
 array of tclonesarray More...
 
TClonesArray * fChamberDigits
 array of digits for one chamber More...
 

Additional Inherited Members

- Public Types inherited from AliMUONVDigitStore
enum  EReplacePolicy { kAllow, kDeny, kMerge, kIgnore }
 Replacement policy : what to do when adding a digit to the store. More...
 
- Static Public Member Functions inherited from AliMUONVDigitStore
static AliMUONVDigitStoreCreate (TTree &tree)
 
static AliMUONVDigitStoreCreate (const char *classname)
 
- Static Public Member Functions inherited from AliMUONVStore
static AliMUONVStoreCreate (TTree &tree, const char *what)
 Create a store from a TTree. More...
 

Detailed Description

(Legacy) implementation of AliMUONVDigitStore

(Legacy) Implementation of AliMUONVDigitStore. Called legacy as the internal structure corresponds to what we used to write as MUON.(S)Digits.root files, before the switch to data stores.

Definition at line 22 of file AliMUONDigitStoreV1.h.

Constructor & Destructor Documentation

AliMUONDigitStoreV1::AliMUONDigitStoreV1 ( )

ctor

Definition at line 69 of file AliMUONDigitStoreV1.cxx.

Referenced by Create().

AliMUONDigitStoreV1::AliMUONDigitStoreV1 ( TRootIOCtor *  dummy)

ctor

Definition at line 60 of file AliMUONDigitStoreV1.cxx.

AliMUONDigitStoreV1::AliMUONDigitStoreV1 ( const AliMUONDigitStoreV1 rhs)

copy ctor

Definition at line 87 of file AliMUONDigitStoreV1.cxx.

AliMUONDigitStoreV1::~AliMUONDigitStoreV1 ( )
virtual

dtor

Definition at line 106 of file AliMUONDigitStoreV1.cxx.

Member Function Documentation

AliMUONVDigit * AliMUONDigitStoreV1::Add ( const AliMUONVDigit digit,
EReplacePolicy  replace = kDeny 
)
virtual

Add a (s)digit. Digit is adopted.

Parameters
digitthe digit to be added
replacespecify what to do if the digit is already there. kAllow means replacement is allowed, kDeny means it is forbidden (in which case we return 0x0), and kMerge means both digits will be merged). Finally, kIgnore means no check is done at all. This is the most rapid option, but also the more dangerous ;-)

Try to add a digit to the store. Return whether the try was successfull or not.

If the digit is already there, the action taken depends on "replace" kAllow -> replacement will occur (i.e. return kTRUE) kDeny -> replacement will not occur (and returned value is kFALSE) kMerge -> both digits will be merged into one (return kTRUE)

Implements AliMUONVDigitStore.

Definition at line 127 of file AliMUONDigitStoreV1.cxx.

virtual Bool_t AliMUONDigitStoreV1::CanConnect ( ) const
inlinevirtual

Whether the Connect(TTree&) method is implemented.

Implements AliMUONVStore.

Definition at line 34 of file AliMUONDigitStoreV1.h.

TClonesArray * AliMUONDigitStoreV1::ChamberDigits ( Int_t  chamberId)
private

Returns the tclonesarray storing digits for chamberId

Definition at line 242 of file AliMUONDigitStoreV1.cxx.

Referenced by Add(), Clear(), FindIndex(), GetSize(), and Remove().

const TClonesArray * AliMUONDigitStoreV1::ChamberDigits ( Int_t  chamberId) const
private

Returns the tclonesarray storing digits for chamberId

Definition at line 250 of file AliMUONDigitStoreV1.cxx.

TObject ** AliMUONDigitStoreV1::ChamberDigitsPtr ( Int_t  chamberId) const
private

Get the address of the TClonesArray storing digits for chamberId.

Definition at line 223 of file AliMUONDigitStoreV1.cxx.

Referenced by Connect().

void AliMUONDigitStoreV1::Clear ( Option_t *  opt = "")
virtual

Clear ourselves (i.e. Reset)

Clear the tclonesarray, but keep the tobjarray's size constant.

Implements AliMUONVStore.

Definition at line 115 of file AliMUONDigitStoreV1.cxx.

Referenced by AliMUONDigitStoreV1(), and TestRecPoints().

Bool_t AliMUONDigitStoreV1::Connect ( TTree &  tree,
Bool_t  alone = kTRUE 
) const
virtual

Connect us to a TTree (only valid if CanConnect()==kTRUE)

Connect this to the tree.

Connect to a Ttree

Reimplemented from AliMUONVStore.

Definition at line 179 of file AliMUONDigitStoreV1.cxx.

virtual AliMUONVDigitStore* AliMUONDigitStoreV1::Create ( ) const
inlinevirtual

Create an (empty) object of the same concrete class as *this.

Implements AliMUONVDigitStore.

Definition at line 38 of file AliMUONDigitStoreV1.h.

Referenced by AliMUONTriggerGUI::AliMUONTriggerGUI().

AliMUONVDigit * AliMUONDigitStoreV1::CreateDigit ( Int_t  detElemId,
Int_t  manuId,
Int_t  manuChannel,
Int_t  cathode 
) const
virtual

Create a digit.

Implements AliMUONVDigitStore.

Definition at line 258 of file AliMUONDigitStoreV1.cxx.

TIterator * AliMUONDigitStoreV1::CreateIterator ( ) const
virtual

Create an iterator to loop over all our digits.

Return an iterator on the full store

Implements AliMUONVDigitStore.

Definition at line 332 of file AliMUONDigitStoreV1.cxx.

Referenced by HasMCInformation(), and TestRecPoints().

TIterator * AliMUONDigitStoreV1::CreateIterator ( Int_t  firstDetElemId,
Int_t  lastDetElemId,
Int_t  cathode = 2 
) const
virtual

Create an iterator to loop over all digits of a group of detection elements, and a given cathode (if cathode != -1)

Return an iterator on part of the store

Implements AliMUONVDigitStore.

Definition at line 356 of file AliMUONDigitStoreV1.cxx.

TIterator * AliMUONDigitStoreV1::CreateTrackerIterator ( ) const
virtual

Create an iterator to loop over tracker digits only.

Return an iterator on the tracker part of the store

Implements AliMUONVDigitStore.

Definition at line 340 of file AliMUONDigitStoreV1.cxx.

TIterator * AliMUONDigitStoreV1::CreateTriggerIterator ( ) const
virtual

Create an iterator to loop over trigger digits only.

Return an iterator on the trigger part of the store

Implements AliMUONVDigitStore.

Definition at line 348 of file AliMUONDigitStoreV1.cxx.

AliMUONVDigit * AliMUONDigitStoreV1::Find ( const AliMUONVDigit digit,
Int_t &  index 
) const
private

Find a digit, and return its index.

Definition at line 286 of file AliMUONDigitStoreV1.cxx.

Referenced by Add().

AliMUONVDigit * AliMUONDigitStoreV1::FindIndex ( Int_t  detElemId,
Int_t  manuId,
Int_t  manuChannel,
Int_t  cathode,
Int_t &  index 
) const
private

Find and return the index of a digit

Definition at line 304 of file AliMUONDigitStoreV1.cxx.

Referenced by Find(), FindObject(), and Remove().

AliMUONVDigit * AliMUONDigitStoreV1::FindObject ( Int_t  detElemId,
Int_t  manuId,
Int_t  manuChannel,
Int_t  cathode 
) const
virtual

Find a digit by the quadruplet (de,manu,channel,cathode)

Find a (trigger) digit

Implements AliMUONVDigitStore.

Definition at line 294 of file AliMUONDigitStoreV1.cxx.

Int_t AliMUONDigitStoreV1::GetSize ( ) const
virtual

Number of digits we store.

Return the number of digits we store

Implements AliMUONVDigitStore.

Definition at line 365 of file AliMUONDigitStoreV1.cxx.

Bool_t AliMUONDigitStoreV1::HasMCInformation ( ) const
virtual

Whether we have any MC related information (e.g. at least one simulated digit)

As this class is legacy, don't care about looping and loosing a bit of time...

Implements AliMUONVDigitStore.

Definition at line 379 of file AliMUONDigitStoreV1.cxx.

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

assignement operator

Definition at line 98 of file AliMUONDigitStoreV1.cxx.

AliMUONVDigit * AliMUONDigitStoreV1::Remove ( AliMUONVDigit digit)
virtual

Remove an element.

Remove one digit, and returns it, thus returning 0x0 if digit is not present.

Implements AliMUONVDigitStore.

Definition at line 266 of file AliMUONDigitStoreV1.cxx.

Member Data Documentation

TClonesArray* AliMUONDigitStoreV1::fChamberDigits
private

array of digits for one chamber

Definition at line 86 of file AliMUONDigitStoreV1.h.

TObjArray* AliMUONDigitStoreV1::fDigits
private

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