|
| HdStBindingRequest ()=default |
|
| HdStBindingRequest (HdStBinding::Type bindingType, TfToken const &name) |
|
| HdStBindingRequest (HdStBinding::Type bindingType, TfToken const &name, HdType dataType) |
|
| HdStBindingRequest (HdStBinding::Type bindingType, TfToken const &name, HdStBufferResourceSharedPtr const &resource) |
|
| HdStBindingRequest (HdStBinding::Type type, TfToken const &name, HdBufferArrayRangeSharedPtr bar, bool interleave, bool writable=false, size_t arraySize=0, bool concatenateNames=false) |
|
|
bool | IsResource () const |
|
bool | IsBufferArray () const |
|
bool | IsInterleavedBufferArray () const |
|
bool | isWritable () const |
|
bool | IsTypeless () const |
|
|
TfToken const & | GetName () const |
|
HdStBinding::Type | GetBindingType () const |
| Returns the HdStBinding type of this request. More...
|
|
HdStBufferResourceSharedPtr const & | GetResource () const |
|
int | GetByteOffset () const |
| Returns the resource or buffer array range offset, defaults to zero. More...
|
|
HdBufferArrayRangeSharedPtr const & | GetBar () const |
|
HdType | GetDataType () const |
| Return the data type of this request. More...
|
|
size_t | GetArraySize () const |
| Array size if request is for an array of structs. More...
|
|
bool | ConcatenateNames () const |
|
|
HDST_API bool | operator== (HdStBindingRequest const &other) const |
|
HDST_API bool | operator!= (HdStBindingRequest const &other) const |
|
BindingRequest allows externally allocated buffers to be bound at render time. The different modes of binding discussed below allow the caller a range of opt-in binding behaviors, from simply reserving a binding location so it can be managed from client code, to fully generating buffer accessor code at compile time (i.e. when using a BufferArrayRange or BufferResource).
This is a "request" because the caller makes a request before bindings are resolved. All requests are consulted and fulfilled during binding resolution.
Definition at line 126 of file binding.h.
template<class HashState >
Returns the hash corresponding to this buffer request.
Note that this hash captures the structural state of the request, not the contents. For example, buffer array versions/reallocations will not affect hash, but changing the BAR pointer will.
Definition at line 306 of file binding.h.