ゲームグラフィックス特論
読み取り中…
検索中…
一致する文字列を見つけられません
gg::GgBuffer< T > クラステンプレート

#include <gg.h>

公開メンバ関数

 GgBuffer (GLenum target, const T *data, GLsizei stride, GLsizei count, GLenum usage)
 GgBuffer (const GgBuffer< T > &buffer)=delete
 GgBuffer (GgBuffer< T > &&o) noexcept
virtual ~GgBuffer ()
GgBuffer< T > & operator= (const GgBuffer< T > &buffer)=delete
const GLuint & getTarget () const
GLsizeiptr getStride () const
const GLsizei & getCount () const
const GLuint & getBuffer () const
void bind () const
void unbind () const
void * map () const
void * map (GLint first, GLsizei count) const
void unmap () const
void send (const T *data, GLint first, GLsizei count) const
void read (T *data, GLint first, GLsizei count) const
void copy (GLuint src_buffer, GLint src_first=0, GLint dst_first=0, GLsizei count=0) const

詳解

template<typename T>
class gg::GgBuffer< T >

バッファオブジェクト.

覚え書き
頂点属性/頂点インデックス/ユニフォーム変数を格納するバッファオブジェクトの基底クラス.

gg.h5822 行目に定義があります。

構築子と解体子

◆ GgBuffer() [1/3]

template<typename T>
gg::GgBuffer< T >::GgBuffer ( GLenum target,
const T * data,
GLsizei stride,
GLsizei count,
GLenum usage )
inline

コンストラクタ.

引数
targetバッファオブジェクトのターゲット.
dataデータが格納されている領域の先頭のポインタ (nullptr ならデータを転送しない).
countデータの数.
strideデータの間隔.
usageバッファオブジェクトの使い方.

gg.h5847 行目に定義があります。

被呼び出し関係図:

◆ GgBuffer() [2/3]

template<typename T>
gg::GgBuffer< T >::GgBuffer ( const GgBuffer< T > & buffer)
delete

コピーコンストラクタは使用しない.

引数
bufferコピー元のバッファ.
呼び出し関係図:

◆ GgBuffer() [3/3]

template<typename T>
gg::GgBuffer< T >::GgBuffer ( GgBuffer< T > && o)
inlinenoexcept

ムーブコンストラクタ.

引数
oムーブ元のバッファ.
覚え書き
バッファオブジェクト名の所有権を移動し, ムーブ元のバッファオブジェクト名を 0 にする. ムーブ元のデストラクタが同じバッファオブジェクトを 削除しないようにするため.

gg.h5881 行目に定義があります。

呼び出し関係図:

◆ ~GgBuffer()

template<typename T>
virtual gg::GgBuffer< T >::~GgBuffer ( )
inlinevirtual

デストラクタ.

gg.h5893 行目に定義があります。

関数詳解

◆ bind()

template<typename T>
void gg::GgBuffer< T >::bind ( ) const
inline

バッファオブジェクトを結合する.

gg.h5951 行目に定義があります。

◆ copy()

template<typename T>
void gg::GgBuffer< T >::copy ( GLuint src_buffer,
GLint src_first = 0,
GLint dst_first = 0,
GLsizei count = 0 ) const
inline

別のバッファオブジェクトからデータを複写する.

引数
src_buffer複写元のバッファオブジェクト名.
src_first複写元 (src_buffer) の先頭のデータの位置.
dst_first複写先 (getBuffer()) の先頭のデータの位置.
count複写するデータの数 (0 ならバッファオブジェクト全体).

gg.h6056 行目に定義があります。

呼び出し関係図:

◆ getBuffer()

template<typename T>
const GLuint & gg::GgBuffer< T >::getBuffer ( ) const
inline

バッファオブジェクト名を取り出す.

戻り値
このバッファオブジェクト名.

gg.h5943 行目に定義があります。

◆ getCount()

template<typename T>
const GLsizei & gg::GgBuffer< T >::getCount ( ) const
inline

バッファオブジェクトが保持するデータの数を取り出す.

戻り値
このバッファオブジェクトが保持するデータの数.

gg.h5933 行目に定義があります。

被呼び出し関係図:

◆ getStride()

template<typename T>
GLsizeiptr gg::GgBuffer< T >::getStride ( ) const
inline

バッファオブジェクトのアライメントを考慮したデータの間隔を取り出す.

戻り値
このバッファオブジェクトのデータの間隔.

gg.h5923 行目に定義があります。

被呼び出し関係図:

◆ getTarget()

template<typename T>
const GLuint & gg::GgBuffer< T >::getTarget ( ) const
inline

バッファオブジェクトのターゲットを取り出す.

戻り値
このバッファオブジェクトのターゲット.

gg.h5913 行目に定義があります。

◆ map() [1/2]

template<typename T>
void * gg::GgBuffer< T >::map ( ) const
inline

バッファオブジェクトをマップする.

戻り値
マップしたメモリの先頭のポインタ.

gg.h5969 行目に定義があります。

呼び出し関係図:

◆ map() [2/2]

template<typename T>
void * gg::GgBuffer< T >::map ( GLint first,
GLsizei count ) const
inline

バッファオブジェクトの指定した範囲をマップする.

引数
firstマップする範囲のバッファオブジェクトの先頭からの位置.
countマップするデータの数 (0 ならバッファオブジェクト全体).
戻り値
マップしたメモリの先頭のポインタ.

gg.h5986 行目に定義があります。

呼び出し関係図:

◆ operator=()

template<typename T>
GgBuffer< T > & gg::GgBuffer< T >::operator= ( const GgBuffer< T > & buffer)
delete

代入演算子は使用しない.

引数
buffer代入元のバッファ.
戻り値
代入後のこのバッファの参照.
呼び出し関係図:

◆ read()

template<typename T>
void gg::GgBuffer< T >::read ( T * data,
GLint first,
GLsizei count ) const
inline

バッファオブジェクトのデータから抽出する.

引数
data抽出先の領域の先頭のポインタ.
first抽出元のバッファオブジェクトの取り出すデータの領域の先頭の要素番号.
count抽出するデータの数 (0 ならバッファオブジェクト全体).

gg.h6029 行目に定義があります。

呼び出し関係図:

◆ send()

template<typename T>
void gg::GgBuffer< T >::send ( const T * data,
GLint first,
GLsizei count ) const
inline

すでに確保したバッファオブジェクトにデータを転送する.

引数
data転送元のデータが格納されている領域の先頭のポインタ.
first転送先のバッファオブジェクトの先頭の要素番号.
count転送するデータの数 (0 ならバッファオブジェクト全体).

gg.h6011 行目に定義があります。

呼び出し関係図:

◆ unbind()

template<typename T>
void gg::GgBuffer< T >::unbind ( ) const
inline

バッファオブジェクトを解放する.

gg.h5959 行目に定義があります。

◆ unmap()

template<typename T>
void gg::GgBuffer< T >::unmap ( ) const
inline

バッファオブジェクトをアンマップする.

gg.h5999 行目に定義があります。


このクラス詳解は次のファイルから抽出されました: