Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGLSelectBuffer Class Reference

Encapsulates OpenGL select buffer.

Provides sorting of the results based on z-coordinate of the selection hit and can fill the TGLSelectRecordBase records.

Definition at line 26 of file TGLSelectBuffer.h.

Public Member Functions

 TGLSelectBuffer ()
 Constructor.
 
virtual ~TGLSelectBuffer ()
 Destructor.
 
Bool_t CanGrow ()
 static: return true if current buffer is smaller than the max buffer size
 
UInt_tGetBuf () const
 
Int_t GetBufSize () const
 
Int_t GetNRecords () const
 
void Grow ()
 Increase size of the select buffer.
 
void ProcessResult (Int_t glResult)
 Process result of GL-selection: sort the hits by their minimum z-coordinate.
 
UInt_tRawRecord (Int_t i)
 
Int_t SelectRecord (TGLSelectRecordBase &rec, Int_t i)
 Fill select record rec with data on (sorted) position i.
 

Protected Types

typedef std::pair< UInt_t, UInt_t * > RawRecord_t
 
typedef std::vector< RawRecord_tvRawRecord_t
 

Protected Attributes

UInt_tfBuf
 
Int_t fBufSize
 
Int_t fNRecords
 
vRawRecord_t fSortedRecords
 

Static Protected Attributes

static Int_t fgMaxBufSize = 1 << 20
 

#include <TGLSelectBuffer.h>

Member Typedef Documentation

◆ RawRecord_t

typedef std::pair<UInt_t, UInt_t*> TGLSelectBuffer::RawRecord_t
protected

Definition at line 34 of file TGLSelectBuffer.h.

◆ vRawRecord_t

typedef std::vector<RawRecord_t> TGLSelectBuffer::vRawRecord_t
protected

Definition at line 35 of file TGLSelectBuffer.h.

Constructor & Destructor Documentation

◆ TGLSelectBuffer()

TGLSelectBuffer::TGLSelectBuffer ( )

Constructor.

Definition at line 30 of file TGLSelectBuffer.cxx.

◆ ~TGLSelectBuffer()

TGLSelectBuffer::~TGLSelectBuffer ( )
virtual

Destructor.

Definition at line 40 of file TGLSelectBuffer.cxx.

Member Function Documentation

◆ CanGrow()

Bool_t TGLSelectBuffer::CanGrow ( )

static: return true if current buffer is smaller than the max buffer size

Definition at line 48 of file TGLSelectBuffer.cxx.

◆ GetBuf()

UInt_t * TGLSelectBuffer::GetBuf ( ) const
inline

Definition at line 46 of file TGLSelectBuffer.h.

◆ GetBufSize()

Int_t TGLSelectBuffer::GetBufSize ( ) const
inline

Definition at line 45 of file TGLSelectBuffer.h.

◆ GetNRecords()

Int_t TGLSelectBuffer::GetNRecords ( ) const
inline

Definition at line 47 of file TGLSelectBuffer.h.

◆ Grow()

void TGLSelectBuffer::Grow ( )

Increase size of the select buffer.

Definition at line 56 of file TGLSelectBuffer.cxx.

◆ ProcessResult()

void TGLSelectBuffer::ProcessResult ( Int_t  glResult)

Process result of GL-selection: sort the hits by their minimum z-coordinate.

Definition at line 67 of file TGLSelectBuffer.cxx.

◆ RawRecord()

UInt_t * TGLSelectBuffer::RawRecord ( Int_t  i)
inline

Definition at line 54 of file TGLSelectBuffer.h.

◆ SelectRecord()

Int_t TGLSelectBuffer::SelectRecord ( TGLSelectRecordBase rec,
Int_t  i 
)

Fill select record rec with data on (sorted) position i.

Returns depth of name-stack for this record.

Definition at line 96 of file TGLSelectBuffer.cxx.

Member Data Documentation

◆ fBuf

UInt_t* TGLSelectBuffer::fBuf
protected

Definition at line 30 of file TGLSelectBuffer.h.

◆ fBufSize

Int_t TGLSelectBuffer::fBufSize
protected

Definition at line 29 of file TGLSelectBuffer.h.

◆ fgMaxBufSize

Int_t TGLSelectBuffer::fgMaxBufSize = 1 << 20
staticprotected

Definition at line 39 of file TGLSelectBuffer.h.

◆ fNRecords

Int_t TGLSelectBuffer::fNRecords
protected

Definition at line 32 of file TGLSelectBuffer.h.

◆ fSortedRecords

vRawRecord_t TGLSelectBuffer::fSortedRecords
protected

Definition at line 37 of file TGLSelectBuffer.h.

Libraries for TGLSelectBuffer:

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