Qt 5.6 | Qt 3D | C++ Classes | QBuffer

Qt 5.6.3 Reference Documentation

# QBuffer Class

(Qt3DRender::QBuffer)

Header: | #include <QBuffer>
qmake: | QT += 3drender
Instantiated By: | Buffer
Inherits: | QAbstractBuffer

- List of all members, including inherited members

## Public Types

enum | BufferType { VertexBuffer, IndexBuffer, PixelPackBuffer, PixelUnpackBuffer }
enum | UsageType { StreamDraw, StreamRead, StreamCopy, StaticDraw, ..., DynamicCopy }

## Properties

- sync : bool
- type : BufferType
- usage : UsageType

- 2 properties inherited from Qt3DCore::QNode

## Public Functions

| QBuffer(BufferType ty = QBuffer::VertexBuffer, Qt3DCore::QNode *parent = Q_NULLPTR)
| ~QBuffer()
QBufferFunctorPtr | bufferFunctor() const
bool | isSync() const
void | setBufferFunctor(const QBufferFunctorPtr &functor)
BufferType | type() const
UsageType | usage() const

- 2 public functions inherited from Qt3DRender::QAbstractBuffer
- 6 public functions inherited from Qt3DCore::QNode

## Public Slots

void | setSync(bool sync)
void | setType(BufferType type)
void | setUsage(UsageType usage)

- 2 public slots inherited from Qt3DCore::QNode

## Signals

void | syncChanged(bool sync)
void | typeChanged(BufferType type)
void | usageChanged(UsageType usage)

- 1 signal inherited from Qt3DRender::QAbstractBuffer
- 2 signals inherited from Qt3DCore::QNode

## Protected Functions

| QBuffer(QBufferPrivate &dd, QBuffer::BufferType ty, Qt3DCore::QNode *parent = Q_NULLPTR)
void | copy(const Qt3DCore::QNode *ref)
void | sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change)

- 3 protected functions inherited from Qt3DCore::QNode

### Additional Inherited Members

- 1 static protected member inherited from Qt3DCore::QNode

## Detailed Description

## Member Type Documentation

### enum QBuffer::BufferType

The type of the buffer.

Constant | Value | Description
--- | --- | ---
`Qt3DRender::QBuffer::VertexBuffer` | `0x8892` | GL_ARRAY_BUFFER
`Qt3DRender::QBuffer::IndexBuffer` | `0x8893` | GL_ELEMENT_ARRAY_BUFFER
`Qt3DRender::QBuffer::PixelPackBuffer` | `0x88EB` | GL_PIXEL_PACK_BUFFER
`Qt3DRender::QBuffer::PixelUnpackBuffer` | `0x88EC` | GL_PIXEL_UNPACK_BUFFER

### enum QBuffer::UsageType

The type of the usage.

Constant | Value | Description
--- | --- | ---
`Qt3DRender::QBuffer::StreamDraw` | `0x88E0` | GL_STREAM_DRAW
`Qt3DRender::QBuffer::StreamRead` | `0x88E1` | GL_STREAM_READ
`Qt3DRender::QBuffer::StreamCopy` | `0x88E2` | GL_STREAM_COPY
`Qt3DRender::QBuffer::StaticDraw` | `0x88E4` | GL_STATIC_DRAW
`Qt3DRender::QBuffer::StaticRead` | `0x88E5` | GL_STATIC_READ
`Qt3DRender::QBuffer::StaticCopy` | `0x88E6` | GL_STATIC_COPY
`Qt3DRender::QBuffer::DynamicDraw` | `0x88E8` | GL_DYNAMIC_DRAW
`Qt3DRender::QBuffer::DynamicRead` | `0x88E9` | GL_DYNAMIC_READ
`Qt3DRender::QBuffer::DynamicCopy` | `0x88EA` | GL_DYNAMIC_COPY

## Property Documentation

### sync : bool

Holds the sync flag. When sync is true, this will force data created by a Qt3DRender::QBufferFunctor to also be updated on the frontend Qt3DRender::QBuffer node. By default sync is false.

Note: : This has no effect if the buffer's data was set directly using the data property.

Access functions:

bool | isSync() const
void | setSync(bool sync)

Notifier signal:

void | syncChanged(bool sync)

### type : BufferType

Holds the buffer type.

Access functions:

BufferType | type() const
void | setType(BufferType type)

Notifier signal:

void | typeChanged(BufferType type)

### usage : UsageType

Holds the buffer usage.

Access functions:

UsageType | usage() const
void | setUsage(UsageType usage)

Notifier signal:

void | usageChanged(UsageType usage)

## Member Function Documentation

### QBuffer::QBuffer(BufferType ty = QBuffer::VertexBuffer, Qt3DCore::QNode *parent = Q_NULLPTR)

Default constructs an instance of QBuffer.

### `[protected]` QBuffer::QBuffer(QBufferPrivate &dd, QBuffer::BufferType ty, Qt3DCore::QNode *parent = Q_NULLPTR)

Copy constructor.

### QBuffer::~QBuffer()

Destroys this buffer.

### QBufferFunctorPtr QBuffer::bufferFunctor() const

Returns the buffer functor.

See also setBufferFunctor().

### `[protected]` void QBuffer::copy(const Qt3DCore::QNode *ref)

### `[protected]` void QBuffer::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change)

### void QBuffer::setBufferFunctor(const QBufferFunctorPtr &functor)

Sets the buffer functor.

See also bufferFunctor().