Step size region by region.
[u/mrichter/AliRoot.git] / CONTAINERS / AliObjectArray.h
CommitLineData
08edbb90 1#ifndef ALIOBJECTARRAY_H
2#define ALIOBJECTARRAY_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7/////////////////////////////////////////////////////////////////////////
8// AliObjectArray //
9//AliObjectArray is an array of clone (identical) objects. //
10//In comparison with the TClonesArray objects in this array don't need //
11//to derive from TObject. They also don't need RTTI - type information.//
12//Objects type information is stored in object fClassInfo (instance of //
13//the AliClassInfo). //
14// //
15/////////////////////////////////////////////////////////////////////////
16
17#include "AliClassInfo.h"
18#include "AliMemArray.h"
19class TClass;
20
21class AliObjectArray: public AliMemArray {
22public:
23 AliObjectArray();
24 AliObjectArray(const char * classname, Int_t buffersize=0);
25 AliObjectArray(const AliObjectArray &arr); //copy constructor
26 AliObjectArray & operator = (const AliObjectArray &arr);
27 ~AliObjectArray();
28 Bool_t SetClass(const char * classname);
29 //
30 TClass * GetClass() {return fClassInfo->GetClass();}
31 AliClassInfo * GetClassInfo() const {return fClassInfo;}
80b7101b 32 virtual void Dump(Int_t i) const;
33 virtual void Dump() const;
08edbb90 34 //
35protected :
36 void CTORBuffer(void * buffer, UInt_t size)
37 {fClassInfo->CTORBuffer(buffer,size);} // buffer constructor
38 void DTORBuffer(void * buffer, UInt_t size)
39 {fClassInfo->DTORBuffer(buffer,size);} // buffer constructor
40private:
41 AliClassInfo *fClassInfo; //pointer to containg class info
42 //
9e1a0ddb 43 //ClassDef(AliObjectArray,0)
44 ClassDef(AliObjectArray,1)
08edbb90 45};
46
47
48
49
50
51
52
53#endif //ALIMEMARRAY_I
54