TEveBoxSetGL.h

Go to the documentation of this file.
00001 // @(#)root/eve:$Id: TEveBoxSetGL.h 36816 2010-11-20 22:41:48Z matevz $
00002 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
00003 
00004 /*************************************************************************
00005  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers.               *
00006  * All rights reserved.                                                  *
00007  *                                                                       *
00008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
00009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
00010  *************************************************************************/
00011 
00012 #ifndef ROOT_TEveBoxSetGL
00013 #define ROOT_TEveBoxSetGL
00014 
00015 #include "TEveDigitSetGL.h"
00016 #include "TEveBoxSet.h"
00017 
00018 class TEveBoxSetGL : public TEveDigitSetGL
00019 {
00020    TEveBoxSetGL(const TEveBoxSetGL&);            // Not implemented
00021    TEveBoxSetGL& operator=(const TEveBoxSetGL&); // Not implemented
00022 
00023 protected:
00024    TEveBoxSet     *fM;       // Model object.
00025 
00026    mutable UInt_t  fBoxDL;   // Display-list id for a box atom.
00027 
00028    Int_t  PrimitiveType() const;
00029    void   MakeOriginBox(Float_t p[8][3], Float_t dx, Float_t dy, Float_t dz) const;
00030    void   RenderBoxStdNorm(const Float_t p[8][3]) const;
00031    void   RenderBoxAutoNorm(const Float_t p[8][3]) const;
00032    void   MakeDisplayList() const;
00033 
00034    void   RenderBoxes(TGLRnrCtx& rnrCtx) const;
00035 
00036 public:
00037    TEveBoxSetGL();
00038    virtual ~TEveBoxSetGL();
00039 
00040    virtual Bool_t ShouldDLCache(const TGLRnrCtx& rnrCtx) const;
00041    virtual void   DLCacheDrop();
00042    virtual void   DLCachePurge();
00043 
00044    virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0);
00045    virtual void   DirectDraw(TGLRnrCtx& rnrCtx) const;
00046 
00047    virtual void Render(TGLRnrCtx& rnrCtx);
00048 
00049    ClassDef(TEveBoxSetGL, 0); // GL-renderer for TEveBoxSet class.
00050 };
00051 
00052 #endif

Generated on Tue Jul 5 14:14:47 2011 for ROOT_528-00b_version by  doxygen 1.5.1