basic/geometry/VRML_Reader.cpp

Go to the documentation of this file.
00001 //## begin module%371E55400000.cm preserve=no
00002 //        %X% %Q% %Z% %W%
00003 //## end module%371E55400000.cm
00004 
00005 //## begin module%371E55400000.cp preserve=no
00006 //## end module%371E55400000.cp
00007 
00008 //## Module: VRML_Reader%371E55400000; Pseudo Package body
00009 //## Source file: E:\mpk\code\geometry\VRML_Reader.cpp
00010 
00011 //## begin module%371E55400000.additionalIncludes preserve=no
00012 //## end module%371E55400000.additionalIncludes
00013 
00014 //## begin module%371E55400000.includes preserve=yes
00015 #pragma warning( disable : 4786 )
00016 #include <assert.h>
00017 #include <geometry/igs/IGS_Group.h>
00018 #include <geometry/igs/IGS_Object.h>
00019 #include <fstream>
00020 #include <OpenGL/GL_Group.h>
00021 //## end module%371E55400000.includes
00022 
00023 // VRML_Reader
00024 #include "geometry\VRML_Reader.h"
00025 //## begin module%371E55400000.additionalDeclarations preserve=yes
00026 //## end module%371E55400000.additionalDeclarations
00027 
00028 
00029 // Class VRML_Reader 
00030 
00031 
00032 
00033 
00034 VRML_Reader::VRML_Reader ()
00035   //## begin VRML_Reader::VRML_Reader%927942491.hasinit preserve=no
00036   //## end VRML_Reader::VRML_Reader%927942491.hasinit
00037   //## begin VRML_Reader::VRML_Reader%927942491.initialization preserve=yes
00038   :
00039         m_Group( NULL )
00040   //## end VRML_Reader::VRML_Reader%927942491.initialization
00041 {
00042   //## begin VRML_Reader::VRML_Reader%927942491.body preserve=yes
00043   //## end VRML_Reader::VRML_Reader%927942491.body
00044 }
00045 
00046 
00047 VRML_Reader::~VRML_Reader()
00048 {
00049   //## begin VRML_Reader::~VRML_Reader%.body preserve=yes
00050 
00051         //delete the nodes
00052         int i;
00053         int size = m_Nodes.size();
00054         for( i = 0; i < size; i++ )
00055         {
00056                 VrmlNode* node = m_Nodes[ i ];
00057                 delete node;
00058         }
00059 
00060         //delete the objects
00061         
00062         size = m_Objects.size();
00063         for( i = 0; i < size; i++ )
00064         {
00065                 IGS_Object*& object = m_Objects[ i ];
00066                 delete object;
00067                 object = NULL;
00068         }
00069   //## end VRML_Reader::~VRML_Reader%.body
00070 }
00071 
00072 
00073 
00074 //## Other Operations (implementation)
00075 //=============================================================================
00076 // Read
00077 //
00078 // Description: reads the VRML object from the file
00079 //=============================================================================
00080 bool VRML_Reader::Read ()
00081 {
00082         assert( false );
00083         return false;
00084 }
00085 
00086 void VRML_Reader::SetFilename (std::string filename)
00087 {
00088   //## begin VRML_Reader::SetFilename%927223875.body preserve=yes
00089         this->filename = filename ;
00090   //## end VRML_Reader::SetFilename%927223875.body
00091 }
00092 
00093 //=============================================================================
00094 // GetTheObject
00095 //
00096 // Description: Returns a pointer to the object from the reader
00097 //=============================================================================
00098 const ObjectBase* VRML_Reader::GetTheObject () const
00099 {
00100   //## begin VRML_Reader::GetTheObject%927307380.body preserve=yes
00101 //      GL_Group* group = new GL_Group( NULL );
00102         m_Group.Clear();
00103 
00104         int i;
00105         int size = m_Objects.size();
00106         for( i = 0; i < size; i++ )
00107         {
00108                 IGS_Object* object = m_Objects[ i ];
00109                 ObjectBase* mpkObject = ObjectBase::Create( object );   //uses object base as a class factory
00110                 m_Group.AddObject( mpkObject );
00111                 delete mpkObject;
00112         }
00113         
00114         return &m_Group;
00115   //## end VRML_Reader::GetTheObject%927307380.body
00116 }
00117 
00118 // Additional Declarations
00119   //## begin VRML_Reader%371E55400000.declarations preserve=yes
00120   //## end VRML_Reader%371E55400000.declarations
00121 
00122 //## begin module%371E55400000.epilog preserve=yes
00123 //## end module%371E55400000.epilog

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