00001 // @(#)root/gl:$Id: TH3GL.h 33579 2010-05-19 12:43:08Z rdm $ 00002 // Author: Matevz Tadel 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_TH3GL 00013 #define ROOT_TH3GL 00014 00015 #include "TGLPlot3D.h" 00016 #include <TGLUtil.h> 00017 #include <TGLAxisPainter.h> 00018 00019 class TGLRnrCtx; 00020 class TH3; 00021 class TAxis; 00022 00023 class TH3; 00024 00025 class TH3GL : public TGLPlot3D 00026 { 00027 private: 00028 TH3GL(const TH3GL&); // Not implemented 00029 TH3GL& operator=(const TH3GL&); // Not implemented 00030 00031 protected: 00032 TH3 *fM; // Model object dynamic-casted to TH2. 00033 00034 public: 00035 TH3GL(); 00036 virtual ~TH3GL(); 00037 00038 virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0); 00039 virtual void SetBBox(); 00040 00041 virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; 00042 00043 // To support two-level selection 00044 // virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } 00045 // virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & rec); 00046 00047 ClassDef(TH3GL, 0); // GL renderer class for TH3. 00048 }; 00049 00050 #endif