The Vish Visualization Shell 0.3
Vish
Public Member Functions | List of all members
Wizt::TypedBufferArrayBase< Type > Class Template Reference
Inheritance diagram for Wizt::TypedBufferArrayBase< Type >:
Wizt::BufferArray Wizt::RenderBasin::VertexAttribute Wizt::BufferID Wizt::Anemone::SpecializedTentacle< Anemone::Arraybuffer > Wizt::Anemone::Tentacle MemCore::ReferenceBase< Tentacle > Wizt::TypedBufferArray< Type > Wizt::TypedTextureBuffer< Type > Wizt::IndexBuffer< Type > Wizt::TypedVertexBufferArray< Type > Wizt::ColorArray< Type > Wizt::SecondaryColorArray< Type > Wizt::TexCoordArray< Type > Wizt::TypedNormalArray< Type > Wizt::TypedVertexArray< Type > Wizt::VertexAttribArray< Type > Wizt::TypedColorArray< Type > Wizt::TypedSecondaryColorArray< Type > Wizt::TypedTexCoordArray< Type > Wizt::TypedVertexAttribArray< Type >

Public Member Functions

size_t getComponentSize () const override
 Get size of a component in bytes.
 
size_t getElementSize () const override
 Return size of the type used for loading the data.
 
bool load (const ::std::vector< Type > &data, BufferArray::usage usage_hint=BufferArray::STATIC_DRAW)
 Load data from a Standard Template Vector.
 
- Public Member Functions inherited from Wizt::BufferArray
 BufferArray (type buffer_target, int AttributeClass=0)
 Construct an OpenGL buffer object (this call does NOT require an OpenGL Context)
 
GLuint getId () const noexcept
 Get an Id without attempting to generate it.
 
GLsizei getStride () const
 A future version may use a stride that is shared among Buffers.
 
bool isIndexBuffer () const
 Check whether this is an index buffer.
 
bool isVertexArray () const
 Check whether this is a vertex array.
 
template<class Type >
bool load_typed (const ::std::vector< Type > &data, size_t start, size_t end)
 Load subset of data from a Standard Template Vector.
 
template<class Type >
bool load_typed (const ::std::vector< Type > &data, usage usage_hint=STATIC_DRAW)
 Load data from a Standard Template Vector.
 
size_t memsize () const
 Return the memory occupied by this buffer.
 
size_t NumberOfElements () const
 Returns the number of elements referenced via this BufferArray.
 
 ~BufferArray ()
 Destructor - MUST be called within an OpenGL Context.
 
- Public Member Functions inherited from Wizt::Anemone::Tentacle
virtual bool activate (const Anemone &)=0
 Activate this tentacle.
 
virtual bool deactivate (const Anemone &)=0
 Deactivate this tentacle.
 
virtual const char * getSamplerType () const
 If this tentacle refers to some texture sampler in a shader, then hereby return the type of this sampler is it occurs in the code.
 
virtual int getTextureUnit () const
 Get the texture unit number which was specified during construction, if positive then it refers to some texture unit that is used in an associated shader.
 
virtual bool updateValue (VRenderContext &Context)
 Possibly update a tentacle from settings in a context.
 
- Public Member Functions inherited from MemCore::ReferenceBase< Tentacle >
auto getObjectCountID () const noexcept
 Get a unique ID for this object in the given domain.
 
bool isIdentical (const WeakPtr< Tentacle, Tentacle > &PossibleSelf) const noexcept
 Check if this object is identical to the one used by the given pointer.
 
void mkAutoDestructive ()
 Marks this object as being automatically destructed, e.g.
 
refcount_t refcount () const noexcept
 The strong reference count.
 
 ReferenceBase (Tentacle *that) noexcept
 Constructor, initializes reference counter to zero.
 
const auto & self () const
 Return weak pointer to the object self.
 
refcount_t wrefcount () const noexcept
 The weak reference count.
 

Additional Inherited Members

- Public Types inherited from Wizt::BufferArray
enum  type
 Possible types of buffer ID's. More...
 
enum  usage
 Specifies the expected usage pattern of the data store. More...
 
- Public Types inherited from MemCore::ReferenceBase< Tentacle >
using reference_domain_t = Tentacle
 The type of the base class.
 
using SelfPtr_t = WeakPtr< Tentacle, Tentacle >
 Type for a pointer to this object itself.
 
- Public Attributes inherited from Wizt::RenderBasin::VertexAttribute
unsigned DoublePrecision:1
 Load data in double precision.
 
unsigned Integer:1
 Hint whether the attribute is an integer data type in the shader, in which case it will be loaded differently.
 
unsigned Normalized:1
 Indicate whether this buffer will be normalized to the range [0,1] if it is an integer type loaded to a floating point attribute.
 
unsigned Signed:1
 Indicate if this integer type is signed.
 
- Public Attributes inherited from Wizt::Anemone::Tentacle
Activity_t Activity
 A bit mask telling whether this tentacle should participate in the waving of an Anemone.
 
- Protected Types inherited from Wizt::BufferID
enum  type
 Possible types of buffer ID's. More...
 
- Protected Member Functions inherited from Wizt::BufferArray
bool load_subset (int offset, const void *ptr, memsize_t sz) const
 Load a subset of the data on the graphics card, updating an existing buffer.
 
bool load_untyped (const void *ptr, memsize_t MemorySize, size_t nElements, usage usage_hint=STATIC_DRAW)
 Loads the given data on the graphix card.
 
- Protected Member Functions inherited from MemCore::ReferenceBase< Tentacle >
virtual void extremeUnction ()
 A virtual function that will be called just before the object is destroyed.
 
ReferenceBaseoperator= (const ReferenceBase &R)
 Protected assignment operator (should not be called).
 
void suicide ()
 Delete this.
 
virtual ~ReferenceBase ()
 Virtual destructor.
 
- Protected Member Functions inherited from Wizt::BufferID
bool bindBuffer () const
 const version of bind(), does not create a buffer ID.
 
bool bindBufferWithPossibleCreation ()
 Non-const version of bind().
 
 BufferID (const type bufferType) noexcept
 The constructor does not yet create openGL buffers yet.
 
GLuint createId () noexcept
 If no valid ID yet, call glCreateBuffers().
 
GLuint getId () const noexcept
 Get an Id without attempting to generate it.
 
bool isbound () const throw ()
 Verification function: buffer is bound?
 
bool isIndexBuffer () const
 Check whether this is an index buffer.
 
bool isVertexArray () const
 Check whether this is a vertex array.
 
GLuint makeId ()
 On first access, OpenGL buffers will be generated. This function must be called from within a valid OpenGL context.
 
GLuint operator() ()
 On first access, OpenGL buffers will be generated. This function must be called from within a valid OpenGL context.
 
 ~BufferID () noexcept
 Deletion of created OpenGL buffers. Note that this might be problematic here if called outside a valid OpenGL context.
 
- Protected Attributes inherited from Wizt::BufferID
const type target
 The target type of this buffer ID.