VrmlParser.h

00001 
00002 //    H3D API.   Copyright 2004, Danel Evestedt, Mark Dixon
00003 //    All Rights Reserved
00004 //
00007 //
00009 
00010 #ifndef __VRMLPARSER_H__
00011 #define __VRMLPARSER_H__
00012 
00013 #include <iostream>
00014 #include "H3DApi.h"
00015 #include "Group.h"
00016 #include "DEFNodes.h"
00017 #include "AutoRef.h"
00018 #include "ProtoDeclaration.h"
00019 #include "X3D.h"
00020 
00021 using namespace std;
00022 
00023 namespace H3D {
00024   namespace X3D {
00025     
00026     // A simple attempt to automatically determine VRMLedness of a 
00027     // file/string/url.
00028     bool isVRML( const string &str );
00029     bool isVRML( istream &is );
00030 
00041     H3DAPI_API Group*createVRMLFromStream( 
00042            istream &in,
00043            DEFNodes *dn = NULL,
00044            DEFNodes *exported_nodes = NULL,
00045            PrototypeVector *prototypes = NULL
00046            );
00047 
00057     H3DAPI_API Group* createVRMLFromString( 
00058                     const string &str,
00059                     DEFNodes *dn = NULL,
00060                     DEFNodes *exported_nodes = NULL,
00061                     PrototypeVector *prototypes = NULL );
00062 
00063 
00073     H3DAPI_API Group* createVRMLFromURL( const string &urn,
00074                                          DEFNodes *dn = NULL,
00075                                          DEFNodes *exported_nodes = NULL,
00076                                          PrototypeVector *prototypes = NULL  );
00077 
00078 
00089     H3DAPI_API AutoRef<Node> createVRMLNodeFromStream( 
00090          istream &in,
00091          DEFNodes *dn = NULL,
00092          DEFNodes *exported_nodes = NULL,
00093          PrototypeVector *prototypes = NULL
00094          );
00095 
00105     H3DAPI_API AutoRef<Node> createVRMLNodeFromString( 
00106                   const string &str,
00107                   DEFNodes *dn = NULL,
00108                                                       DEFNodes *exported_nodes = NULL,
00109                                                       PrototypeVector *prototypes = NULL 
00110                   );
00111 
00112 
00122     H3DAPI_API AutoRef<Node> createVRMLNodeFromURL( 
00123                  const string &urn,
00124                  DEFNodes *dn = NULL,
00125                  DEFNodes *exported_nodes = NULL,
00126                  PrototypeVector *prototypes = NULL 
00127                  );
00128 
00129 
00130   }
00131 };
00132 
00133 #endif

Generated on Thu Aug 24 12:38:35 2006 for H3D API by  doxygen 1.4.5