ROOT logo
AliRoot » MUON » AliMUONVStore

class AliMUONVStore: public TObject

 \class AliMUONVStore

 A store is a container, which can be searched for (using FindObject methods),
 iterated upon (using CreateIterator() method), and into which you can
 add objects (using Add)

 In addition, a store can be connected to a TTree.

 The general way of dealing with I/O for MUON is a two stage process :

 1) first get a TTree pointer using the AliLoader mechanism (this is AliRoot
    general)

 2) connect that TTree to a MUON (virtual) data container using
    the container's Connect(TTree&) method (this is MUON specific)

 Example for reading digits for nevents

 \code

 AliMUONVDigitStore* digitStore(0x0);

 AliLoader* loader = ... ( get loader from somewhere, e.g. AliRunLoader::GetDetectorLoader());
 loader->LoadDigits("READ"); // load digits

 for ( Int_t i = 0; i < nevents; ++i )
 {
   TTree* treeD = loader->TreeD(); // get the tree
   if (!digitStore) digitStore = static_cast<AliMUONVDigitStore*>
     (AliMUONVDigitStore::CreateStore(*treeD,"Digit")); // creates a container for digits
   (concrete class is given by the tree itself)
   digitStore->Connect(*treeD);
   treeD->GetEvent(0); // actual reading of the data

   the digitStore is now filled and ready to be used
   ....

   digitStore->Clear(); // reset once used
 }

 \endcode

 Please note that for reading data, you do *not* need to know the concrete
 container class, as it is given to you by the TTree

 Example for writing digits

 \code

 get the loader and do a loader->LoadDigits("RECREATE" or "UPDATE")
 (generally done by the framework itself)

 AliMUONVDigitStore* digitStore = new AliMUONDigitStoreV1
 // for writing, must decide on the concrete store class to use

 for ( Int_t i = 0; i < nevents; ++i )
 {
   TTree* treeD = loader->TreeD();
   digitStore->Connect(*treeD);

   ... put some digits in the digitStore

   treeD->Fill();

   loader->WriteDigits("OVERWRITE");
 }

 delete digitStore;

 loader->UnloadDigits();

 \endcode

 In the write case, one *must* specify a concrete class for the container


Function Members (Methods)

 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~AliMUONVStore()
voidTObject::AbstractMethod(const char* method) const
virtual Bool_tAdd(TObject* object)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual Bool_tCanConnect() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t* opt = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual Bool_tConnect(TTree& tree, Bool_t alone = kTRUE) const
virtual voidTObject::Copy(TObject& object) const
virtual AliMUONVStore*Create() const
static AliMUONVStore*Create(TTree& tree, const char* what)
virtual TIterator*CreateIterator() const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*FindObject(const char* name) const
virtual TObject*FindObject(const TObject* object) const
virtual TObject*FindObject(UInt_t uniqueID) const
virtual TObject*FindObject(Int_t i, Int_t j) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Int_tGetSize() const
virtual Int_tGetSize(Int_t i) const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tIsEmpty() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
AliMUONVStore&operator=(const AliMUONVStore&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(Option_t* wildcard = "") const
virtual voidPrint(Option_t* wildcard, Option_t* opt) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

Class Charts

Inheritance Chart:
TObject
AliMUONVStore
AliMUON1DArray
AliMUON1DMap
AliMUON2DMap
AliMUONVClusterStore
AliMUONClusterStoreV1
AliMUONClusterStoreV2
AliMUONVDigitStore
AliMUONDigitStoreV1
AliMUONDigitStoreVImpl
AliMUONDigitStoreV2R
 [more...]

Function documentation

~AliMUONVStore()
 dtor
Connect(TTree& tree, Bool_t alone = kTRUE) const
 Connect to a Ttree
Create(TTree& tree, const char* what)
 Create a store from a tree. Forwarded to AliMUONTreeManager::CreateStore
FindObject(Int_t i, Int_t j) const
 Find an object using 2 identifiers
FindObject(const char* name) const
 Find an object in this collection using its name. Requires a sequential
 scan till the object has been found. Returns 0 if object with specified
 name is not found.
FindObject(const TObject* object) const
 Find an object in this store using the object's IsEqual()
 member function. Requires a sequential scan till the object has
 been found. Returns 0 if object is not found.
 Typically this function is overridden by a more efficient version
 in concrete collection classes.
FindObject(UInt_t uniqueID) const
 Generic find method. Should be overriden by derived class if it can
 be made more efficient there.
GetSize(Int_t i) const
 Number of objects store for "i", whatever that can means
Print(Option_t* wildcard = "") const
 Print all objects in this store.
 Wildcarding is supported, e.g. wildcard="xxx*" prints only objects
 with names matching xxx*.
Print(Option_t* wildcard, Option_t* opt) const
 Print all objects in this store, passing option to the
 objects Print() method.
 Wildcarding is supported, e.g. wildcard="xxx*" prints only objects
 with names matching xxx*.
Bool_t Add(TObject* object)
 Add an object to the store
void Clear(Option_t* opt = "")
 Clear ourselves (i.e. Reset)
AliMUONVStore* Create() const
 Create an empty copy of this
TIterator* CreateIterator() const
 Return an iterator to loop over the whole store
Bool_t CanConnect() const
 Whether the Connect(TTree&) method is implemented
Int_t GetSize() const
 The number of objects stored
Bool_t IsEmpty() const
 Whether we are empty or not
{ return GetSize() == 0; }