1 #ifndef UGDK_GRAPHIC_VERTEXDATA_H_
2 #define UGDK_GRAPHIC_VERTEXDATA_H_
13 #pragma SWIG nowarn=325
30 T*
Get(std::size_t index) {
31 Validate(
typeid(T).name(),
sizeof(T), index);
32 return reinterpret_cast<T*
>(mapped_ + index * data_.
vertex_size());
39 void Validate(
const char* name, std::size_t size, std::size_t index);
45 const std::unique_ptr<VertexBuffer>&
buffer()
const {
return buffer_; }
49 void CheckSizes(
const char* caller_name, std::size_t test_num_vertices, std::size_t test_vertex_size)
const;
52 std::unique_ptr<VertexBuffer> buffer_;
53 std::size_t num_vertices_;
54 std::size_t vertex_size_;
71 #endif // UGDK_GRAPHIC_VERTEXDATA_H_
uint8_t uint8
Definition: types.h:12
VertexDataSpecification(std::size_t num, std::size_t size, bool is_dynamic)
Definition: vertexdata.h:58
void CheckSizes(const char *caller_name, std::size_t test_num_vertices, std::size_t test_vertex_size) const
T * Get(std::size_t index)
Definition: vertexdata.h:30
Definition: animation.h:11
std::size_t num_vertices() const
Definition: vertexdata.h:46
Definition: vertexdata.h:20
bool dynamic
Definition: vertexdata.h:63
std::size_t num_vertices
Definition: vertexdata.h:61
Definition: vertexdata.h:57
void operator=(Mapper &)=delete
const std::unique_ptr< VertexBuffer > & buffer() const
Definition: vertexdata.h:45
Mapper(VertexData &data, bool read_from_buffer=true)
std::size_t vertex_size() const
Definition: vertexdata.h:47
VertexData(std::size_t num_vertices, std::size_t vertex_size, bool dynamic, bool ignore_vbo=false)
Definition: vertexdata.h:22
std::shared_ptr< VertexData > CreateVertexDataWithSpecification(const VertexDataSpecification &)
std::size_t vertex_size
Definition: vertexdata.h:62