00001 // @(#)root/eve:$Id: TEveSceneInfo.h 24001 2008-05-23 20:58:14Z 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_TEveSceneInfo 00013 #define ROOT_TEveSceneInfo 00014 00015 #include "TEveElement.h" 00016 00017 class TGLSceneBase; 00018 class TGLSceneInfo; 00019 00020 class TEveViewer; 00021 class TEveScene; 00022 00023 class TEveSceneInfo : public TEveElement, 00024 public TNamed 00025 { 00026 private: 00027 TEveSceneInfo(const TEveSceneInfo&); // Not implemented 00028 TEveSceneInfo& operator=(const TEveSceneInfo&); // Not implemented 00029 00030 protected: 00031 TEveViewer *fViewer; 00032 TEveScene *fScene; 00033 TGLSceneInfo *fGLSceneInfo; 00034 00035 public: 00036 TEveSceneInfo(TEveViewer* viewer, TEveScene* scene, TGLSceneInfo* sinfo); 00037 virtual ~TEveSceneInfo() {} 00038 00039 TEveViewer * GetViewer() const { return fViewer; } 00040 TEveScene * GetScene() const { return fScene; } 00041 TGLSceneInfo * GetGLSceneInfo() const { return fGLSceneInfo; } 00042 TGLSceneBase * GetGLScene() const; 00043 00044 virtual Bool_t SingleRnrState() const { return kTRUE; } 00045 00046 virtual void AddStamp(UChar_t bits); 00047 00048 virtual Bool_t AcceptElement(TEveElement* el); 00049 virtual Bool_t HandleElementPaste(TEveElement* el); 00050 00051 ClassDef(TEveSceneInfo, 0); // TEveUtil representation of TGLSceneInfo. 00052 }; 00053 00054 #endif