20#include "../variant/variant.h"
21#include "../variant/box.h"
22#include "../variant/color.h"
23#include "../variant/image.h"
24#include "../variant/integer.h"
25#include "../variant/matrix.h"
26#include "../variant/minmax.h"
27#include "../variant/plane.h"
28#include "../variant/quaternion.h"
29#include "../variant/ray.h"
30#include "../variant/real.h"
31#include "../variant/source.h"
32#include "../variant/tuple.h"
33#include "../variant/typedarray.h"
34#include "../variant/vector.h"
42 std::shared_ptr<Box2i>
_box2i(
int xmin,
int xmax,
int ymin,
int ymax);
48 std::shared_ptr<Box2f>
_box2f(
float xmin,
float xmax,
float ymin,
float ymax);
54 std::shared_ptr<Box3i>
_box3i(
int xmin,
int xmax,
int ymin,
int ymax,
int zmin,
int zmax);
60 std::shared_ptr<Box3f>
_box3f(
float xmin,
float xmax,
float ymin,
float ymax,
float zmin,
float zmax);
65 std::shared_ptr<BoundingBox>
_bbox();
66 std::shared_ptr<BoundingBox>
_bbox(
float xmin,
float xmax,
float ymin,
float ymax,
float zmin,
float zmax);
71 std::shared_ptr<Color3f>
_clr3();
72 std::shared_ptr<Color3f>
_clr3(
float r,
float g,
float b);
80 std::shared_ptr<Color3ub>
_clr3ub(
unsigned char r,
unsigned char g,
unsigned char b);
87 std::shared_ptr<Color4f>
_clr4();
88 std::shared_ptr<Color4f>
_clr4(
float r,
float g,
float b,
float a);
96 std::shared_ptr<Color4ub>
_clr4ub(
unsigned char r,
unsigned char g,
unsigned char b,
unsigned char a);
103 std::shared_ptr<Image2D>
_image2d(
int width,
int height,
unsigned char* data =
nullptr);
106 std::shared_ptr<ImageCube>
_imageCube(
const std::vector<Image2D>& images);
115 std::shared_ptr<Matrix2f>
_mat2(
float e00,
float e01,
116 float e10,
float e11);
125 std::shared_ptr<Matrix3f>
_mat3(
float e00,
float e01,
float e02,
126 float e10,
float e11,
float e12,
127 float e20,
float e21,
float e22);
137 std::shared_ptr<Matrix4f>
_mat4(
float e00,
float e01,
float e02,
float e03,
138 float e10,
float e11,
float e12,
float e13,
139 float e20,
float e21,
float e22,
float e23,
140 float e30,
float e31,
float e32,
float e33);
151 std::shared_ptr<MinMax>
_minmax(
float min,
float max);
156 std::shared_ptr<Plane>
_plane(
float x,
float y,
float z,
float w);
161 std::shared_ptr<Quaternion>
_quat();
162 std::shared_ptr<Quaternion>
_quat(
float x,
float y,
float z,
float w);
173 std::shared_ptr<Real>
_real(
float v);
177 std::shared_ptr<VertexSource>
_vert(
const std::string& text);
178 std::shared_ptr<FragmentSource>
_frag(
const std::string& text);
179 std::shared_ptr<GeometrySource>
_geom(
const std::string& text);
182 std::shared_ptr<Int8Array>
_i8array(
int size = 0,
char* data =
nullptr,
bool copy =
true);
183 std::shared_ptr<Int8Array>
_i8array(
const std::initializer_list<char>& array);
186 std::shared_ptr<Uint8Array>
_u8array(
int size = 0,
unsigned char* data =
nullptr,
bool copy =
true);
187 std::shared_ptr<Uint8Array>
_u8array(
const std::initializer_list<unsigned char>& array);
190 std::shared_ptr<Int16Array>
_i16array(
int size = 0,
short* data =
nullptr,
bool copy =
true);
191 std::shared_ptr<Int16Array>
_i16array(
const std::initializer_list<short>& array);
194 std::shared_ptr<Uint16Array>
_u16array(
int size = 0,
unsigned short* data =
nullptr,
bool copy =
true);
195 std::shared_ptr<Uint16Array>
_u16array(
const std::initializer_list<unsigned short>& array);
198 std::shared_ptr<Int32Array>
_i32array(
int size = 0,
int* data =
nullptr,
bool copy =
true);
199 std::shared_ptr<Int32Array>
_i32array(
const std::initializer_list<int>& array);
202 std::shared_ptr<Uint32Array>
_u32array(
int size = 0,
unsigned int* data =
nullptr,
bool copy =
true);
203 std::shared_ptr<Uint32Array>
_u32array(
const std::initializer_list<unsigned int>& array);
206 std::shared_ptr<Float32Array>
_f32array(
int size = 0,
float* data =
nullptr,
bool copy =
true);
207 std::shared_ptr<Float32Array>
_f32array(
const std::initializer_list<float>& array);
210 std::shared_ptr<Float64Array>
_f64array(
int size = 0,
double* data =
nullptr,
bool copy =
true);
211 std::shared_ptr<Float64Array>
_f64array(
const std::initializer_list<double>& array);
215 std::shared_ptr<Vector2i>
_ivec2(
int x,
int y);
222 std::shared_ptr<Vector2f>
_vec2(
float x,
float y);
229 std::shared_ptr<Vector3i>
_ivec3(
int x,
int y,
int z);
236 std::shared_ptr<Vector3f>
_vec3(
float x,
float y,
float z);
243 std::shared_ptr<Vector4i>
_ivec4(
int x,
int y,
int z,
int w);
250 std::shared_ptr<Vector4f>
_vec4(
float x,
float y,
float z,
float w);
251 std::shared_ptr<Vector4f>
_vec4(
const Vector2f& other,
float z = 0,
float w = 0);
The BoundingBox class inherits from Box3, specilizing the template parameters to float for element ty...
Definition box.h:224
The Box2f class inherits from Box2, specilizing the template parameters to float for element type and...
Definition box.h:128
The Box2i class inherits from Box2, specilizing the template parameters to int for element type and V...
Definition box.h:119
The Box3f class inherits from Box3, specilizing the template parameters to float for element type and...
Definition box.h:214
The Box3i class inherits from Box3, specilizing the template parameters to int for element type and V...
Definition box.h:204
The Color3f class inherits from Color3, specilizing the template parameters to float for element type...
Definition color.h:105
The Color3ub class inherits from Color3, specilizing the template parameters to unsigned char for ele...
Definition color.h:116
The Color4f class inherits from Color4, specilizing the template parameters to float for element type...
Definition color.h:146
The Color4ub class inherits from Color4, specilizing the template parameters to unsigned char for ele...
Definition color.h:157
The Integer class inherits from the Tuple class and stores a single integer.
Definition integer.h:26
The Matrix2f class is 2 X 2 matrix.
Definition matrix.h:169
The Matrix3f class is 3 X 3 matrix.
Definition matrix.h:194
The Matrix4f class is 4 X 4 matrix.
Definition matrix.h:226
The MinMax class inherits from Tuple, specilizing the template parameters to float for element type.
Definition minmax.h:31
The Plane class inherits from the Tuple class, specilizing the templated parameter to float for eleme...
Definition plane.h:30
The Quaternion class inherits from the Tuple class, specilizing the templated parameter to float for ...
Definition quaternion.h:28
The Ray class inherits from the Tuple class, specilizing the templated parameter to float for element...
Definition ray.h:29
The Real class inherits from the Tuple class and stores a single float.
Definition real.h:26
The class Vector2f inherits from the templated class of Vector2, and the template parameters are spec...
Definition vector.h:268
The class Vector2i inherits from the templated class of Vector2, and the template parameters are spec...
Definition vector.h:255
The class Vector3f inherits from the templated class of Vector3, and the template parameters are spec...
Definition vector.h:322
The class Vector3i inherits from the templated class of Vector3, and the template parameters are spec...
Definition vector.h:312
The class Vector4f inherits from the templated class of Vector4, and the template parameters are spec...
Definition vector.h:366
The class Vector4i inherits from the templated class of Vector4, and the template parameters are spec...
Definition vector.h:354
std::shared_ptr< MinMax > _minmax()
std::shared_ptr< Vector3f > _vec3()
std::shared_ptr< Integer > _integer()
std::shared_ptr< Uint32Array > _u32array(int size=0, unsigned int *data=nullptr, bool copy=true)
std::shared_ptr< Vector2i > _ivec2()
std::shared_ptr< Vector4i > _ivec4()
std::shared_ptr< Float64Array > _f64array(int size=0, double *data=nullptr, bool copy=true)
std::shared_ptr< Image2D > _image2d(int width, int height, unsigned char *data=nullptr)
std::shared_ptr< Uint16Array > _u16array(int size=0, unsigned short *data=nullptr, bool copy=true)
std::shared_ptr< Matrix3f > _mat3()
std::shared_ptr< Int16Array > _i16array(int size=0, short *data=nullptr, bool copy=true)
std::shared_ptr< Vector3i > _ivec3()
std::shared_ptr< Box2f > _box2f()
std::shared_ptr< Float32Array > _f32array(int size=0, float *data=nullptr, bool copy=true)
std::shared_ptr< Color4f > _clr4()
std::shared_ptr< Plane > _plane()
std::shared_ptr< ImageCube > _imageCube(const std::vector< Image2D > &images)
std::shared_ptr< Quaternion > _quat()
std::shared_ptr< Box3f > _box3f()
std::shared_ptr< BoundingBox > _bbox()
std::shared_ptr< Uint8Array > _u8array(int size=0, unsigned char *data=nullptr, bool copy=true)
std::shared_ptr< Color4ub > _clr4ub()
std::shared_ptr< Color3f > _clr3()
std::shared_ptr< Box2i > _box2i()
std::shared_ptr< Matrix4f > _mat4()
std::shared_ptr< GeometrySource > _geom(const std::string &text)
std::shared_ptr< Matrix2f > _mat2()
std::shared_ptr< Ray > _ray()
std::shared_ptr< Box3i > _box3i()
std::shared_ptr< Color3ub > _clr3ub()
std::shared_ptr< Int8Array > _i8array(int size=0, char *data=nullptr, bool copy=true)
std::shared_ptr< Vector4f > _vec4()
std::shared_ptr< VertexSource > _vert(const std::string &text)
std::shared_ptr< Int32Array > _i32array(int size=0, int *data=nullptr, bool copy=true)
std::shared_ptr< FragmentSource > _frag(const std::string &text)
std::shared_ptr< Real > _real()
std::shared_ptr< Vector2f > _vec2()