NGL  6.5
The NCCA Graphics Library
NGLStream.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2013 Jon Macey
3 
4  This program is free software: you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation, either version 3 of the License, or
7  (at your option) any later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program. If not, see <http://www.gnu.org/licenses/>.
16  */
19 #ifndef NGLSTREAM_H_
20 #define NGLSTREAM_H_
21 #include <iostream>
22 #include "Types.h"
23 namespace ngl
24 {
25  class Light;
26  class Plane;
27  class Mat3;
28  class Mat4;
29  class Vec2;
30  class Vec3;
31  class Vec4;
32  class Colour;
33  class TransformStack;
34  class Quaternion;
35  class AABB;
36  class BBox;
37  class Camera;
38  class BezierCurve;
39  class Material;
40  class PathCamera;
41  class SpotLight;
42  class Transformation;
43 //----------------------------------------------------------------------------------------------------------------------
47 //----------------------------------------------------------------------------------------------------------------------
48  NGL_DLLEXPORT std::ostream &operator<<(std::ostream& _output, const Vec2& _s);
49 //----------------------------------------------------------------------------------------------------------------------
53 //----------------------------------------------------------------------------------------------------------------------
54  NGL_DLLEXPORT std::istream& operator>>(std::istream& _input, Vec2 &_s);
55 //----------------------------------------------------------------------------------------------------------------------
59 //----------------------------------------------------------------------------------------------------------------------
60  NGL_DLLEXPORT std::ostream& operator<<(std::ostream& _output, const Vec3& _s);
61  //----------------------------------------------------------------------------------------------------------------------
65 //----------------------------------------------------------------------------------------------------------------------
66  NGL_DLLEXPORT std::istream& operator>>(std::istream& _input, Vec3 &_s);
67 //----------------------------------------------------------------------------------------------------------------------
71 //----------------------------------------------------------------------------------------------------------------------
72  NGL_DLLEXPORT std::ostream& operator<<(std::ostream& _output, const Vec4& _s);
73 //----------------------------------------------------------------------------------------------------------------------
77 //----------------------------------------------------------------------------------------------------------------------
78  NGL_DLLEXPORT std::istream& operator>>(std::istream& _input, Vec4 &_s);
79  //----------------------------------------------------------------------------------------------------------------------
83  //----------------------------------------------------------------------------------------------------------------------
84  NGL_DLLEXPORT std::ostream& operator<<(std::ostream& _output, const Camera& _c);
85  //----------------------------------------------------------------------------------------------------------------------
89  //----------------------------------------------------------------------------------------------------------------------
90  NGL_DLLEXPORT std::ostream& operator<<( std::ostream& _output, const Colour& _s );
91  //----------------------------------------------------------------------------------------------------------------------
95  //----------------------------------------------------------------------------------------------------------------------
96  NGL_DLLEXPORT std::istream& operator>>( std::istream& _input, Colour& _s );
97 
98  //----------------------------------------------------------------------------------------------------------------------
102  //----------------------------------------------------------------------------------------------------------------------
103  NGL_DLLEXPORT std::ostream& operator<<(std::ostream& output, const Mat3& M);
104  //----------------------------------------------------------------------------------------------------------------------
108  //----------------------------------------------------------------------------------------------------------------------
109  NGL_DLLEXPORT std::ostream& operator<<(std::ostream& output, const Mat4& M);
110  //----------------------------------------------------------------------------------------------------------------------
114  //----------------------------------------------------------------------------------------------------------------------
115  NGL_DLLEXPORT std::ostream& operator<<(std::ostream& _output, TransformStack& _m);
116  //----------------------------------------------------------------------------------------------------------------------
120  //----------------------------------------------------------------------------------------------------------------------
121  NGL_DLLEXPORT std::istream& operator >> ( std::istream& _ifs, Quaternion &_q );
122 
123  //----------------------------------------------------------------------------------------------------------------------
127  //----------------------------------------------------------------------------------------------------------------------
128  NGL_DLLEXPORT std::ostream& operator << ( std::ostream& i_s, const Quaternion &i_q);
129 
130 
131 
132 } // end of namespace ngl
133 #endif
main definition of types and namespace
#define NGL_DLLEXPORT
Definition: Types.h:65
implementation files for RibExport class
Definition: AABB.cpp:22
NGL_DLLEXPORT std::ostream & operator<<(std::ostream &_output, const Vec2 &_v)
insertion operator to print out the Vec2
Definition: NGLStream.cpp:15
NGL_DLLEXPORT std::istream & operator>>(std::istream &_input, Vec2 &_s)
extraction operator to read in the Vec2
Definition: NGLStream.cpp:20