00001 // @(#)root/eve:$Id: TEveStraightLineSetGL.h 29754 2009-08-11 15:48:54Z 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_TEveStraightLineSetGL 00013 #define ROOT_TEveStraightLineSetGL 00014 00015 #include "TGLObject.h" 00016 00017 class TGLViewer; 00018 class TGLScene; 00019 00020 class TEveStraightLineSet; 00021 00022 class TEveStraightLineSetGL : public TGLObject 00023 { 00024 private: 00025 TEveStraightLineSetGL(const TEveStraightLineSetGL&); // Not implemented 00026 TEveStraightLineSetGL& operator=(const TEveStraightLineSetGL&); // Not implemented 00027 00028 protected: 00029 TEveStraightLineSet* fM; // fModel dynamic-casted to TEveStraightLineSetGL 00030 00031 public: 00032 TEveStraightLineSetGL(); 00033 virtual ~TEveStraightLineSetGL() {} 00034 00035 virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0); 00036 virtual void SetBBox(); 00037 virtual void Draw(TGLRnrCtx& rnrCtx) const; 00038 virtual void DirectDraw(TGLRnrCtx& rnrCtx) const; 00039 00040 virtual Bool_t IgnoreSizeForOfInterest() const { return kTRUE; } 00041 00042 virtual Bool_t ShouldDLCache(const TGLRnrCtx& rnrCtx) const; 00043 virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } 00044 virtual void ProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec); 00045 00046 ClassDef(TEveStraightLineSetGL, 0); // GL-renderer for TEveStraightLineSet class. 00047 }; 00048 00049 #endif