AliRoot Core  edcc906 (edcc906)
AliMUONVDigitStore Class Referenceabstract

Interface for a digit container. More...

#include <AliMUONVDigitStore.h>

Inheritance diagram for AliMUONVDigitStore:

Public Types

enum  EReplacePolicy { kAllow, kDeny, kMerge, kIgnore }
 Replacement policy : what to do when adding a digit to the store. More...
 

Public Member Functions

 AliMUONVDigitStore ()
 
virtual ~AliMUONVDigitStore ()
 
virtual Bool_t Add (TObject *object)
 Add an object, if it is of the right class. More...
 
virtual AliMUONVDigitStoreCreate () const =0
 Create an (empty) object of the same concrete class as *this. More...
 
virtual AliMUONVDigitCreateDigit (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode) const =0
 Create a digit. 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 AliMUONVDigitAdd (const AliMUONVDigit &digit, EReplacePolicy replace)=0
 
virtual TIterator * CreateIterator () const =0
 Create an iterator to loop over all our digits. More...
 
virtual TIterator * CreateIterator (Int_t firstDetElemId, Int_t lastDetElemId, Int_t cathode=2) const =0
 
virtual TIterator * CreateTrackerIterator () const =0
 Create an iterator to loop over tracker digits only. More...
 
virtual TIterator * CreateTriggerIterator () const =0
 Create an iterator to loop over trigger digits only. 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 AliMUONVDigitFindObject (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode) const =0
 Find a digit by the quadruplet (de,manu,channel,cathode) More...
 
virtual Int_t GetSize () const =0
 Number of digits we store. More...
 
virtual AliMUONVDigitRemove (AliMUONVDigit &digit)=0
 Remove an element. 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...
 
virtual Bool_t HasMCInformation () const =0
 Whether we have any MC related information (e.g. at least one simulated digit) More...
 
- Public Member Functions inherited from AliMUONVStore
 AliMUONVStore ()
 
virtual ~AliMUONVStore ()
 
virtual void Clear (Option_t *opt="")=0
 Clear ourselves (i.e. Reset) More...
 
virtual Bool_t CanConnect () const =0
 Whether the Connect(TTree&) method is implemented. More...
 
virtual Bool_t Connect (TTree &tree, Bool_t alone=kTRUE) const
 Connect us to a TTree (only valid if CanConnect()==kTRUE) More...
 
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...
 

Static Public Member Functions

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

Interface for a digit container.

Interface for a digit (or sdigit) container

It offers methods to Add, Find and Remove single elements, and can create iterators to loop over (part of) the elements.

Author
Laurent Aphecetche, Subatech

Definition at line 23 of file AliMUONVDigitStore.h.

Member Enumeration Documentation

Replacement policy : what to do when adding a digit to the store.

Enumerator
kAllow 
kDeny 
kMerge 
kIgnore 

Definition at line 28 of file AliMUONVDigitStore.h.

Constructor & Destructor Documentation

AliMUONVDigitStore::AliMUONVDigitStore ( )

ctor

Definition at line 42 of file AliMUONVDigitStore.cxx.

AliMUONVDigitStore::~AliMUONVDigitStore ( )
virtual

dtor

Definition at line 48 of file AliMUONVDigitStore.cxx.

Member Function Documentation

AliMUONVDigit * AliMUONVDigitStore::Add ( Int_t  detElemId,
Int_t  manuId,
Int_t  manuChannel,
Int_t  cathode,
EReplacePolicy  replace 
)
virtual

Add a digit and return the newly created digit.

Add a digit and return it

Definition at line 79 of file AliMUONVDigitStore.cxx.

virtual AliMUONVDigit* AliMUONVDigitStore::Add ( const AliMUONVDigit digit,
EReplacePolicy  replace 
)
pure 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 ;-)

Implemented in AliMUONDigitStoreV1, and AliMUONDigitStoreVImpl.

AliMUONVDigitStore * AliMUONVDigitStore::Create ( TTree &  tree)
static

Create store from the given tree (if possible).

Definition at line 116 of file AliMUONVDigitStore.cxx.

AliMUONVDigitStore * AliMUONVDigitStore::Create ( const char *  classname)
static

Create a concrete digitStore, given its classname

Definition at line 98 of file AliMUONVDigitStore.cxx.

virtual AliMUONVDigit* AliMUONVDigitStore::CreateDigit ( Int_t  detElemId,
Int_t  manuId,
Int_t  manuChannel,
Int_t  cathode 
) const
pure virtual
virtual TIterator* AliMUONVDigitStore::CreateIterator ( Int_t  firstDetElemId,
Int_t  lastDetElemId,
Int_t  cathode = 2 
) const
pure virtual

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

Implemented in AliMUONDigitStoreV1, and AliMUONDigitStoreVImpl.

virtual TIterator* AliMUONVDigitStore::CreateTrackerIterator ( ) const
pure virtual

Create an iterator to loop over tracker digits only.

Implemented in AliMUONDigitStoreVImpl, and AliMUONDigitStoreV1.

Referenced by AliMUONDigitCalibrator::Calibrate(), and AliMUONRawWriter::Digits2BusPatchMap().

virtual TIterator* AliMUONVDigitStore::CreateTriggerIterator ( ) const
pure virtual
AliMUONVDigit * AliMUONVDigitStore::FindObject ( const TObject *  object) const
virtual

Find an object (default is to forward to FindObject(object->GetUniqueID())

Find an object, if of AliMUONVDigit type.

Reimplemented from AliMUONVStore.

Definition at line 127 of file AliMUONVDigitStore.cxx.

Referenced by AliMUONDigitStoreV1::Create(), AliMUONChamberCalibrationTask::Exec(), AliMUONESDInterface::FindDigit(), AliMUONSimpleClusterServer::FindMCLabel(), FindObject(), AliMUONESDInterface::LoadEvent(), MUONClusterInfo(), and AliMUONESDInterface::MUONToESD().

AliMUONVDigit * AliMUONVDigitStore::FindObject ( UInt_t  uniqueID) const
virtual

Find an object by its uniqueID.

Find digit by its uniqueID

Reimplemented from AliMUONVStore.

Reimplemented in AliMUONDigitStoreVImpl.

Definition at line 140 of file AliMUONVDigitStore.cxx.

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

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

Implemented in AliMUONDigitStoreV1, and AliMUONDigitStoreVImpl.

virtual Int_t AliMUONVDigitStore::GetSize ( ) const
pure virtual
virtual Int_t AliMUONVDigitStore::GetSize ( Int_t  detElemId) const
inlinevirtual

Number of digits in a given detection element.

Reimplemented from AliMUONVStore.

Definition at line 99 of file AliMUONVDigitStore.h.

Referenced by GetSize().

Int_t AliMUONVDigitStore::GetSize ( Int_t  detElemId,
Int_t  cathode 
) const
virtual

Number of digits in a given detection element and a given cathode (2 for both cathodes)

Return the number of digits we have for a given detection element

Definition at line 152 of file AliMUONVDigitStore.cxx.

virtual Bool_t AliMUONVDigitStore::HasMCInformation ( ) const
pure virtual

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

Implemented in AliMUONDigitStoreV1, AliMUONDigitStoreV2R, and AliMUONDigitStoreV2S.

Referenced by AliMUONSimpleClusterServer::Clusterize(), and GetSize().

virtual AliMUONVDigit* AliMUONVDigitStore::Remove ( AliMUONVDigit digit)
pure virtual

Remove an element.

Implemented in AliMUONDigitStoreV1, and AliMUONDigitStoreVImpl.


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