#ifndef ROOT_TGLSelectRecord
#define ROOT_TGLSelectRecord
#include <Rtypes.h>
class TObject;
class TGLSceneInfo;
class TGLPhysicalShape;
class TGLOverlayElement;
class TGLSelectRecordBase
{
protected:
Int_t fN;
UInt_t *fItems;
Float_t fMinZ;
Float_t fMaxZ;
Int_t fPos;
void CopyItems(UInt_t* items);
public:
TGLSelectRecordBase();
TGLSelectRecordBase(UInt_t* data);
TGLSelectRecordBase(const TGLSelectRecordBase& rec);
virtual ~TGLSelectRecordBase();
TGLSelectRecordBase& operator=(const TGLSelectRecordBase& rec);
void SetRawOnly(UInt_t* data);
virtual void Set(UInt_t* data);
virtual void Reset();
Int_t GetN() const { return fN; }
UInt_t* GetItems() const { return fItems; }
UInt_t GetItem(Int_t i) const { return fItems[i]; }
Float_t GetMinZ() const { return fMinZ; }
Float_t GetMaxZ() const { return fMaxZ; }
UInt_t GetCurrItem() const { return fPos < fN ? fItems[fPos] : 0; }
Int_t GetNLeft() const { return fN - fPos; }
void NextPos() { ++fPos; }
void PrevPos() { --fPos; }
void ResetPos() { fPos = 0; }
ClassDef(TGLSelectRecordBase, 0)
};
class TGLSelectRecord : public TGLSelectRecordBase
{
protected:
Bool_t fTransparent;
TGLSceneInfo *fSceneInfo;
TGLPhysicalShape *fPhysShape;
TObject *fObject;
void *fSpecific;
public:
TGLSelectRecord();
TGLSelectRecord(UInt_t* data);
TGLSelectRecord(const TGLSelectRecord& rec);
virtual ~TGLSelectRecord();
TGLSelectRecord& operator=(const TGLSelectRecord& rec);
virtual void Set(UInt_t* data);
virtual void Reset();
Bool_t GetTransparent() const { return fTransparent; }
TGLSceneInfo * GetSceneInfo() const { return fSceneInfo; }
TGLPhysicalShape * GetPhysShape() const { return fPhysShape; }
TObject * GetObject() const { return fObject; }
void * GetSpecific() const { return fSpecific; }
void SetTransparent(Bool_t t) { fTransparent = t; }
void SetSceneInfo (TGLSceneInfo* si) { fSceneInfo = si; }
void SetPhysShape (TGLPhysicalShape* pshp) { fPhysShape = pshp; }
void SetObject (TObject* obj) { fObject = obj; }
void SetSpecific (void* spec) { fSpecific = spec; }
void Print();
static Bool_t AreSameSelectionWise(const TGLSelectRecord& r1,
const TGLSelectRecord& r2);
ClassDef(TGLSelectRecord, 0)
};
class TGLOvlSelectRecord : public TGLSelectRecordBase
{
protected:
TGLOverlayElement* fOvlElement;
public:
TGLOvlSelectRecord();
TGLOvlSelectRecord(UInt_t* data);
TGLOvlSelectRecord(const TGLOvlSelectRecord& rec);
virtual ~TGLOvlSelectRecord();
TGLOvlSelectRecord& operator=(const TGLOvlSelectRecord& rec);
virtual void Set(UInt_t* data);
virtual void Reset();
TGLOverlayElement* GetOvlElement() const { return fOvlElement; }
void SetOvlElement(TGLOverlayElement* e) { fOvlElement = e; }
ClassDef(TGLOvlSelectRecord, 0)
};
#endif
Last change: Wed Jun 25 08:41:22 2008
Last generated: 2008-06-25 08:41
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.