basic/opengl/GL_Group.cpp

Go to the documentation of this file.
00001 //## begin module%37B059830278.cm preserve=no
00002 //        %X% %Q% %Z% %W%
00003 //## end module%37B059830278.cm
00004 
00005 //## begin module%37B059830278.cp preserve=no
00006 //## end module%37B059830278.cp
00007 
00008 //## Module: GL_Group%37B059830278; Pseudo Package body
00009 //## Source file: C:\project\mpk\code\OpenGL\GL_Group.cpp
00010 
00011 //## begin module%37B059830278.additionalIncludes preserve=no
00012 //## end module%37B059830278.additionalIncludes
00013 
00014 //## begin module%37B059830278.includes preserve=yes
00015 #include <assert.h>
00016 //## end module%37B059830278.includes
00017 
00018 // GL_Group
00019 #include "OpenGL\GL_Group.h"
00020 //## begin module%37B059830278.additionalDeclarations preserve=yes
00021 //## end module%37B059830278.additionalDeclarations
00022 
00023 
00024 // Class GL_Group 
00025 
00026 GL_Group::GL_Group (FrameManager* frameManager)
00027   //## begin GL_Group::GL_Group%934304236.hasinit preserve=no
00028   //## end GL_Group::GL_Group%934304236.hasinit
00029   //## begin GL_Group::GL_Group%934304236.initialization preserve=yes
00030         :ObjectGroup( frameManager )
00031   //## end GL_Group::GL_Group%934304236.initialization
00032 {
00033   //## begin GL_Group::GL_Group%934304236.body preserve=yes
00034   //## end GL_Group::GL_Group%934304236.body
00035 }
00036 
00037 GL_Group::GL_Group (const GL_Group& right)
00038   //## begin GL_Group::GL_Group%934304237.hasinit preserve=no
00039   //## end GL_Group::GL_Group%934304237.hasinit
00040   //## begin GL_Group::GL_Group%934304237.initialization preserve=yes
00041    :ObjectGroup( right )
00042   //## end GL_Group::GL_Group%934304237.initialization
00043 {
00044   //## begin GL_Group::GL_Group%934304237.body preserve=yes
00045   //## end GL_Group::GL_Group%934304237.body
00046 }
00047 
00048 //=============================================================================
00049 // Constructor
00050 //
00051 // Description: constructs an GL_Group from an IGS_Group 
00052 //=============================================================================
00053 GL_Group::GL_Group (const IGS_Group& right)
00054 :
00055         ObjectGroup( right )
00056 {
00057         //nothing here intentionally
00058 }
00059 
00060 GL_Group::~GL_Group()
00061 {
00062   //## begin GL_Group::~GL_Group%.body preserve=yes
00063   //## end GL_Group::~GL_Group%.body
00064 }
00065 
00066 
00067 
00068 //## Other Operations (implementation)
00069 Entity* GL_Group::Clone () const
00070 {
00071   //## begin GL_Group::Clone%934304238.body preserve=yes
00072         return new GL_Group( *this ) ;
00073   //## end GL_Group::Clone%934304238.body
00074 }
00075 
00076 bool GL_Group::DrawExplicit () const
00077 {
00078   //## begin GL_Group::DrawExplicit%950474927.body preserve=yes
00079         //draw each of the individual objects
00080         for( int i = 0 ; i < objects.size(); i++ )
00081         {
00082                 ObjectBase* theObject = objects[ i ] ;
00083                 assert( dynamic_cast< OpenGLInterface* >( objects[ i ] ) != NULL ) ;    //IMPROVE: just don't draw these objects?
00084 
00085                 //IMPROVE: what do we do if the object is not an OPENGL object
00086                 dynamic_cast< OpenGLInterface* >( objects[ i ] )->DrawExplicit() ;
00087         }
00088         return true ;
00089   //## end GL_Group::DrawExplicit%950474927.body
00090 }
00091 
00092 // Additional Declarations
00093   //## begin GL_Group%37B059830278.declarations preserve=yes
00094   //## end GL_Group%37B059830278.declarations
00095 
00096 //## begin module%37B059830278.epilog preserve=yes
00097 //## end module%37B059830278.epilog
00098 
00099 
00100 // Detached code regions:
00101 // WARNING: this code will be lost if code is regenerated.
00102 #if 0
00103 //## begin GL_Group::GLDraw%950480127.body preserve=no
00104         this->DrawExplicit() ;
00105 //## end GL_Group::GLDraw%950480127.body
00106 
00107 #endif

Generated on Sat Apr 1 21:30:35 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO