00001 // @(#)root/gl:$Id: TGLPShapeRef.h 26394 2008-11-23 14:35:25Z matevz $ 00002 // Author: Matevz Tadel, Feb 2007 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2004, 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_TGLPShapeRef 00013 #define ROOT_TGLPShapeRef 00014 00015 #include <Rtypes.h> 00016 00017 class TGLPhysicalShape; 00018 00019 class TGLPShapeRef 00020 { 00021 friend class TGLPhysicalShape; 00022 private: 00023 TGLPShapeRef(const TGLPShapeRef&); // Not implemented 00024 TGLPShapeRef& operator=(const TGLPShapeRef&); // Not implemented 00025 00026 TGLPShapeRef * fNextPSRef; // Internal pointer to the next reference (used by TGLPhysicalShape directly). 00027 00028 protected: 00029 TGLPhysicalShape * fPShape; // Pointer to referenced physical shape. 00030 00031 public: 00032 TGLPShapeRef(); 00033 TGLPShapeRef(TGLPhysicalShape * shape); 00034 virtual ~TGLPShapeRef(); 00035 00036 TGLPhysicalShape * GetPShape() const { return fPShape; } 00037 virtual void SetPShape(TGLPhysicalShape * shape); 00038 virtual void PShapeModified(); 00039 00040 ClassDef(TGLPShapeRef, 0); // Reference to a TGLPhysicalShape object. 00041 }; // endclass TGLPShapeRef 00042 00043 00044 #endif