GLI  0.6.0
texture_cube_array.hpp
Go to the documentation of this file.
1 
29 #pragma once
30 
31 #include "image.hpp"
32 
33 namespace gli
34 {
35  class textureCube;
36  class texture2D;
37 
39  {
40  public:
48 
49  public:
51 
53  explicit textureCubeArray(
54  size_type const & Layers,
55  size_type const & Faces,
56  size_type const & Levels,
57  format_type const & Format,
58  dim_type const & Dimensions);
59 
61  explicit textureCubeArray(
62  size_type const & Layers,
63  size_type const & Faces,
64  format_type const & Format,
65  dim_type const & Dimensions);
66 
68  explicit textureCubeArray(
69  storage const & Storage);
70 
72  explicit textureCubeArray(
73  storage const & Storage,
74  format_type const & Format,
75  size_type BaseLayer,
76  size_type MaxLayer,
77  size_type BaseFace,
78  size_type MaxFace,
79  size_type BaseLevel,
80  size_type MaxLevel);
81 
83  explicit textureCubeArray(
84  textureCubeArray const & Texture,
85  size_type const & BaseLayer,
86  size_type const & MaxLayer,
87  size_type const & BaseFace,
88  size_type const & MaxFace,
89  size_type const & BaseLevel,
90  size_type const & MaxLevel);
91 
93  explicit textureCubeArray(
94  textureCube const & Texture,
95  size_type const & BaseFace,
96  size_type const & MaxFace,
97  size_type const & BaseLevel,
98  size_type const & MaxLevel);
99 
101  explicit textureCubeArray(
102  texture2D const & Texture,
103  size_type const & BaseLevel,
104  size_type const & MaxLevel);
105 
106  operator storage() const;
107  textureCube operator[] (size_type const & Layer) const;
108 
109  bool empty() const;
110  format_type format() const;
111  dim_type dimensions() const;
112  size_type layers() const;
113  size_type faces() const;
114  size_type levels() const;
115 
116  size_type size() const;
117  void * data();
118  void const * data() const;
119 
120  template <typename genType>
121  size_type size() const;
122  template <typename genType>
123  genType * data();
124  template <typename genType>
125  genType const * data() const;
126 
127  void clear();
128  template <typename genType>
129  void clear(genType const & Texel);
130 
131  size_type baseLayer() const;
132  size_type maxLayer() const;
133  size_type baseFace() const;
134  size_type maxFace() const;
135  size_type baseLevel() const;
136  size_type maxLevel() const;
137 
138  private:
139  storage Storage;
140  size_type BaseLayer;
141  size_type MaxLayer;
142  size_type BaseFace;
143  size_type MaxFace;
144  size_type BaseLevel;
145  size_type MaxLevel;
146  format_type Format;
147  };
148 }//namespace gli
size_type baseLevel() const
size_t size_type
Definition: storage.hpp:68
size_type levels() const
storage::format_type format_type
storage::size_type face_type
size_type layers() const
dim_type dimensions() const
size_type maxFace() const
size_type maxLevel() const
textureCube operator[](size_type const &Layer) const
bool empty() const
storage::size_type level_type
size_type faces() const
texture2D
Definition: texture2d.hpp:40
texcoord4_t texcoord4_type
Definition: storage.hpp:67
OpenGL Image (gli.g-truc.net)
size_type baseFace() const
size_type baseLayer() const
storage::dim2_type dim_type
size_type maxLayer() const
storage::size_type layer_type
storage::texcoord4_type texcoord_type
format_type format() const
storage::size_type size_type
size_type size() const
dim2_t dim2_type
Definition: storage.hpp:60
format
Definition: format.hpp:33