1 /*---------------------------------------------------------------------------*\
2 * OpenSG openNURBS SceneFileType *
5 * Copyright (C) 2007-2008 by Seac02 S.r.l. http://www.seac02.it *
6 * Copyright (C) 2008 by Patrik Mueller muellerptr@users.sourceforge.net *
7 * Copyright (C) 2008 by Akos Balazs edhellon@cs.uni-bonn.de *
9 \*---------------------------------------------------------------------------*/
10 /*---------------------------------------------------------------------------*\
13 * This library is free software; you can redistribute it and/or modify it *
14 * under the terms of the GNU Library General Public License as published *
15 * by the Free Software Foundation, version 2. *
17 * This library is distributed in the hope that it will be useful, but *
18 * WITHOUT ANY WARRANTY; without even the implied warranty of *
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
20 * Library General Public License for more details. *
22 * You should have received a copy of the GNU Library General Public *
23 * License along with this library; if not, write to the Free Software *
24 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. *
26 \*---------------------------------------------------------------------------*/
27 /*---------------------------------------------------------------------------*\
35 \*---------------------------------------------------------------------------*/
37 #ifndef _OSGRHINOSCENEFILETYPE_H_
38 #define _OSGRHINOSCENEFILETYPE_H_
43 #include "OSGContribRhino3DDef.h"
44 #include "OSGBaseTypes.h"
46 #include "OSGSceneFileType.h"
50 /*!\brief OSGRhinoSceneFileType
53 class OSG_CONTRIBRHINO3D_DLLMAPPING RhinoSceneFileType
: public SceneFileType
55 /*========================== PUBLIC =================================*/
58 /*---------------------------------------------------------------------*/
59 /*! \name Static Get */
62 static RhinoSceneFileType
&the(void);
65 /*---------------------------------------------------------------------*/
66 /*! \name Destructors */
69 virtual ~RhinoSceneFileType(void);
72 /*---------------------------------------------------------------------*/
76 virtual const Char8
*getName(void) const;
79 /*---------------------------------------------------------------------*/
83 virtual NodeTransitPtr
read( std::istream
&is
,
84 const Char8
*fileNameOrExtension
,
85 Resolver resolver
= NULL
) const;
88 /*---------------------------------------------------------------------*/
93 /*========================= PROTECTED ===============================*/
97 NodeTransitPtr
read3DM(const Char8
*fileName
) const;
99 /*---------------------------------------------------------------------*/
103 static const Char8
*_suffixA
[];
104 static RhinoSceneFileType _the
;
107 /*---------------------------------------------------------------------*/
108 /*! \name Constructors */
111 RhinoSceneFileType(const Char8
*suffixArray
[],
112 UInt16 suffixByteCount
,
114 UInt32 overridePriority
,
118 /*========================== PRIVATE ================================*/
122 typedef SceneFileType Inherited
;
124 /*!\brief prohibit default function (move to 'public' if needed) */
125 RhinoSceneFileType(const RhinoSceneFileType
&obj
);
126 /*!\brief prohibit default function (move to 'public' if needed) */
127 void operator =(const RhinoSceneFileType
&source
);
130 typedef RhinoSceneFileType
* RhinoSceneFileTypeP
;
134 #endif // _OSGRHINOSCENEFILETYPE_H_