X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=RALICE%2FAliObjMatrix.h;h=412898d1d8c5f9eadf8da22bdb38c2006c5ca7b2;hp=c1d0728c4b9b2858a970cddf83d50d4dfa93be01;hb=ea0b5b7fa605d46132220093598845caf0dea5db;hpb=84bb7c662a1f4f63efcc0ee92f7c9f7dfac1f196 diff --git a/RALICE/AliObjMatrix.h b/RALICE/AliObjMatrix.h index c1d0728c4b9..412898d1d8c 100644 --- a/RALICE/AliObjMatrix.h +++ b/RALICE/AliObjMatrix.h @@ -5,35 +5,42 @@ // $Id$ -#include "Riostream.h" - -#include "TObject.h" +#include "TNamed.h" #include "TObjArray.h" +#include "TArrayI.h" -class AliObjMatrix : public TObject +class AliObjMatrix : public TNamed { public: - AliObjMatrix(); // Default constructor - ~AliObjMatrix(); // Default destructor - virtual void Reset(); // Reset the whole matrix structure - virtual void SetOwner(Int_t own=1); // Set the owner flag for the stored objects - virtual Int_t GetOwner(); // Provide the owner flag for the stored objects - virtual void SetSwapMode(Int_t swap=1); // Set the swap mode flag for this matrix - virtual Int_t GetSwapMode(); // Provide the swap mode flag for this matrix - virtual void EnterObject(Int_t row,Int_t col,TObject* obj); // Enter an object into the matrix - virtual TObject* GetObject(Int_t row,Int_t col); // Provide an object from the matrix - virtual Int_t GetMaxRow(); // Provide the maximum row number index - virtual Int_t GetMaxColumn(); // Provide the maximum column number index - virtual Int_t GetNobjects(); // Provide the number of stored objects + AliObjMatrix(); // Default constructor + virtual ~AliObjMatrix(); // Default destructor + virtual void Reset(); // Reset the whole matrix structure + virtual void SetOwner(Int_t own=1); // Set the owner flag for the stored objects + virtual Int_t GetOwner() const; // Provide the owner flag for the stored objects + virtual void SetSwapMode(Int_t swap=1); // Set the swap mode flag for this matrix + virtual Int_t GetSwapMode() const; // Provide the swap mode flag for this matrix + virtual void EnterObject(Int_t row,Int_t col,TObject* obj); // Enter an object into the matrix + void RemoveObject(Int_t row,Int_t col); // Remove object at (row,col) from the matrix + void RemoveObjects(TObject* obj,Int_t row=0,Int_t col=0); // Remove specified object(s) from the matrix + virtual TObject* GetObject(Int_t row,Int_t col) const; // Provide an object from the matrix + virtual Int_t GetMaxRow() const; // Provide the maximum row number index + virtual Int_t GetMaxColumn() const; // Provide the maximum column number index + virtual Int_t GetNobjects() const; // Provide the number of stored objects + virtual TObject* GetObject(Int_t j) const; // Provide pointer to the j-th object + virtual TObjArray* GetObjects(); // Provide pointers of all stored onjects + Int_t GetNrefs(TObject* obj) const; // Number of stored references to this object + Int_t GetIndices(TObject* obj,TArrayI& rows,TArrayI& cols) const; // All (row,col) indices of this object + Int_t GetIndices(TObject* obj,Int_t row,TArrayI& cols) const; // Column indices in a specific row + Int_t GetIndices(TObject* obj,TArrayI& rows,Int_t col) const; // Row indices in a specific column protected: - TObjArray* fRows; // Pointers to the various arrays representing the matrix rows - Int_t fOwn; // Flag to indicate whether the objects are owned by the matrix structure - Int_t fSwap; // Flag to indicate swapped mode for internal matrix storage - Int_t fMaxrow; // The maximum row number index - Int_t fMaxcol; // The maximum column number index - Int_t fNobjects; // The number of stored objects + TObjArray* fRows; // Pointers to the various arrays representing the matrix rows + Int_t fOwn; // Flag to indicate whether the objects are owned by the matrix structure + Int_t fSwap; // Flag to indicate swapped mode for internal matrix storage + Int_t fMaxrow; // The maximum row number index + Int_t fMaxcol; // The maximum column number index + TObjArray* fObjects; // Linear reference array for fast looping over the stored objects - ClassDef(AliObjMatrix,1) // Handling of a matrix structure of objects. + ClassDef(AliObjMatrix,6) // Handling of a matrix structure of objects. }; #endif