Warnings on vc14 were eliminated
[occt.git] / src / Vrml / Vrml.hxx
CommitLineData
42cf5bc1 1// Created on: 1996-12-23
2// Created by: Alexander BRIVIN and Dmitry TARASOV
3// Copyright (c) 1996-1999 Matra Datavision
4// Copyright (c) 1999-2014 OPEN CASCADE SAS
5//
6// This file is part of Open CASCADE Technology software library.
7//
8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
10// by the Free Software Foundation, with special exception defined in the file
11// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12// distribution for complete text of the license and disclaimer of any warranty.
13//
14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
16
17#ifndef _Vrml_HeaderFile
18#define _Vrml_HeaderFile
19
20#include <Standard.hxx>
21#include <Standard_DefineAlloc.hxx>
22#include <Standard_Handle.hxx>
23
24#include <Standard_OStream.hxx>
25#include <Standard_CString.hxx>
26class Vrml_SFImage;
27class Vrml_SFRotation;
28class Vrml_AsciiText;
29class Vrml_Cone;
30class Vrml_Cube;
31class Vrml_Cylinder;
32class Vrml_IndexedFaceSet;
33class Vrml_IndexedLineSet;
34class Vrml_PointSet;
35class Vrml_Sphere;
36class Vrml_Coordinate3;
37class Vrml_FontStyle;
38class Vrml_Info;
39class Vrml_LOD;
40class Vrml_Material;
41class Vrml_MaterialBinding;
42class Vrml_Normal;
43class Vrml_NormalBinding;
44class Vrml_Texture2;
45class Vrml_Texture2Transform;
46class Vrml_TextureCoordinate2;
47class Vrml_ShapeHints;
48class Vrml_MatrixTransform;
49class Vrml_Rotation;
50class Vrml_Scale;
51class Vrml_Transform;
52class Vrml_Translation;
53class Vrml_OrthographicCamera;
54class Vrml_PerspectiveCamera;
55class Vrml_DirectionalLight;
56class Vrml_PointLight;
57class Vrml_SpotLight;
58class Vrml_Group;
59class Vrml_Separator;
60class Vrml_Switch;
61class Vrml_TransformSeparator;
62class Vrml_WWWAnchor;
63class Vrml_WWWInline;
64class Vrml_Instancing;
65
66
67//! Vrml package implements the specification of the
68//! VRML ( Virtual Reality Modeling Language ). VRML
69//! is a standard language for describing interactive
70//! 3-D objects and worlds delivered across Internet.
71//! Actual version of Vrml package have made for objects
72//! of VRML version 1.0.
73//! This package is used by VrmlConverter package.
74//! The developer should already be familiar with VRML
75//! specification before using this package.
76class Vrml
77{
78public:
79
80 DEFINE_STANDARD_ALLOC
81
82
83 //! Writes a header in anOStream (VRML file).
84 //! Writes one line of commentary in anOStream (VRML file).
85 Standard_EXPORT static Standard_OStream& VrmlHeaderWriter (Standard_OStream& anOStream);
86
87 Standard_EXPORT static Standard_OStream& CommentWriter (const Standard_CString aComment, Standard_OStream& anOStream);
88
89
90
91
92protected:
93
94
95
96
97
98private:
99
100
101
102
103friend class Vrml_SFImage;
104friend class Vrml_SFRotation;
105friend class Vrml_AsciiText;
106friend class Vrml_Cone;
107friend class Vrml_Cube;
108friend class Vrml_Cylinder;
109friend class Vrml_IndexedFaceSet;
110friend class Vrml_IndexedLineSet;
111friend class Vrml_PointSet;
112friend class Vrml_Sphere;
113friend class Vrml_Coordinate3;
114friend class Vrml_FontStyle;
115friend class Vrml_Info;
116friend class Vrml_LOD;
117friend class Vrml_Material;
118friend class Vrml_MaterialBinding;
119friend class Vrml_Normal;
120friend class Vrml_NormalBinding;
121friend class Vrml_Texture2;
122friend class Vrml_Texture2Transform;
123friend class Vrml_TextureCoordinate2;
124friend class Vrml_ShapeHints;
125friend class Vrml_MatrixTransform;
126friend class Vrml_Rotation;
127friend class Vrml_Scale;
128friend class Vrml_Transform;
129friend class Vrml_Translation;
130friend class Vrml_OrthographicCamera;
131friend class Vrml_PerspectiveCamera;
132friend class Vrml_DirectionalLight;
133friend class Vrml_PointLight;
134friend class Vrml_SpotLight;
135friend class Vrml_Group;
136friend class Vrml_Separator;
137friend class Vrml_Switch;
138friend class Vrml_TransformSeparator;
139friend class Vrml_WWWAnchor;
140friend class Vrml_WWWInline;
141friend class Vrml_Instancing;
142
143};
144
145
146
147
148
149
150
151#endif // _Vrml_HeaderFile