|
HDK
|
#include <readWriteIterator.h>
Inheritance diagram for VdfReadWriteIterator< T >:Public Types | |
| using | value_type = T |
| using | difference_type = int |
| using | reference = value_type & |
| using | pointer = value_type * |
| using | iterator_category = std::forward_iterator_tag |
Public Member Functions | |
| VdfReadWriteIterator (const VdfContext &context, const TfToken &name) | |
| VdfReadWriteIterator (const VdfContext &context) | |
| bool | operator== (const VdfReadWriteIterator &rhs) const |
| bool | operator!= (const VdfReadWriteIterator &rhs) const |
| VdfReadWriteIterator & | operator++ () |
| reference | operator* () const |
| pointer | operator-> () const |
| bool | IsAtEnd () const |
| void | AdvanceToEnd () |
Static Public Member Functions | |
| static VdfReadWriteIterator | Allocate (const VdfContext &context, const TfToken &name, size_t count) |
| static VdfReadWriteIterator | Allocate (const VdfContext &context, size_t count) |
Friends | |
| int | Vdf_GetIteratorIndex (const VdfReadWriteIterator &it) |
Additional Inherited Members | |
Protected Member Functions inherited from VdfIterator | |
| ~VdfIterator ()=default | |
| const VdfNode & | _GetNode (const VdfContext &context) const |
| const VdfExecutorInterface & | _GetExecutor (const VdfContext &context) const |
| VDF_API const VdfVector * | _GetInputValue (const VdfContext &context, const VdfConnection &connection, const VdfMask &mask) const |
| VDF_API const VdfVector & | _GetRequiredInputValue (const VdfContext &context, const VdfConnection &connection, const VdfMask &mask) const |
| VDF_API const VdfOutput * | _GetRequiredOutputForWriting (const VdfContext &context, const TfToken &name) const |
| VDF_API VdfVector * | _GetOutputValueForWriting (const VdfContext &context, const VdfOutput &output) const |
| VDF_API bool | _GetOutputMasks (const VdfContext &context, const VdfOutput &output, const VdfMask **requestMask, const VdfMask **affectsMask) const |
| VDF_API bool | _IsRequiredInput (const VdfContext &context, const VdfConnection &connection) const |
| VDF_API const VdfMask * | _GetRequestMask (const VdfContext &context, const VdfOutput &output) const |
| VDF_API void | _ForEachScheduledOutput (const VdfContext &context, const VdfNode &node, const VdfScheduledOutputCallback &callback) const |
This iterator provides read access to input values, and write access to the associated output values. If the output does not have an associated input, read/write access is provided to the output values.
On construction, VdfReadWriteIterator will look for an input with the specified name. If the specified name does not refer to a valid input, or if the input does not have an associated output, VdfReadWriteIterator will look for an output with the specified name. If no valid output is available, a runtime error will be emitted.
When constructed without an explicit input/output name, VdfReadWriteIterator will look for the single output on the current node. If the node has more than one output, a runtime error will be emitted.
For outputs with an affects mask, the data elements visited by the iterator will be limited to those set in the affects mask. All data elements will be visited for outputs without an affects mask.
Definition at line 54 of file readWriteIterator.h.
| using VdfReadWriteIterator< T >::difference_type = int |
The type used to identify distance between instances of this iterator.
Definition at line 64 of file readWriteIterator.h.
| using VdfReadWriteIterator< T >::iterator_category = std::forward_iterator_tag |
The STL category of this iterator type.
Definition at line 76 of file readWriteIterator.h.
| using VdfReadWriteIterator< T >::pointer = value_type * |
The type of a pointer to a value of this iterator.
Definition at line 72 of file readWriteIterator.h.
| using VdfReadWriteIterator< T >::reference = value_type & |
Type of a reference to a value of this iterator.
Definition at line 68 of file readWriteIterator.h.
| using VdfReadWriteIterator< T >::value_type = T |
Type of the elements this iterator gives access to.
Definition at line 60 of file readWriteIterator.h.
| VdfReadWriteIterator< T >::VdfReadWriteIterator | ( | const VdfContext & | context, |
| const TfToken & | name | ||
| ) |
Constructs a read/write iterator for the given input or output. If no input with the specified name exists on the current node, or if the input does not have an associated output, attempt to find an output named name. Emits a coding error if name does not name an input or an output.
Definition at line 199 of file readWriteIterator.h.
|
inlineexplicit |
Constructs a read/write iterator for the only output on the current node. If the node has more than a single output, a coding error will be emitted.
Definition at line 90 of file readWriteIterator.h.
|
inline |
Advance the iterator to the end.
Definition at line 162 of file readWriteIterator.h.
|
static |
Allocates storage for count elements at the given input or output and returns a read/write iterator at the beginning of that newly allocated storage. The elements in the storage will be default initialized.
If no input with the specified name exists on the current node, or if the input does not have an associated output, attempt to find an output named name. Emits a coding error if name does not name an input or an output.
Definition at line 215 of file readWriteIterator.h.
|
static |
Allocates storage for count elements at the only output on the current node and returns a read/write iterator at the beginning of that newly allocated storage. The elements in the storage will be default initialized.
If the node has more than a single output, a coding error will be emitted.
Definition at line 227 of file readWriteIterator.h.
|
inline |
Returns true if the iterator is done iterating and false otherwise.
Definition at line 156 of file readWriteIterator.h.
|
inline |
Returns true if this iterator and rhs do not compare equal.
Definition at line 127 of file readWriteIterator.h.
|
inline |
Returns reference to current element. Calling this on an iterator that IsAtEnd() is invalid and will lead to undefined behavior.
Definition at line 139 of file readWriteIterator.h.
| VdfReadWriteIterator< T > & VdfReadWriteIterator< T >::operator++ | ( | ) |
Increment operator to point to the next element. Calling this on an iterator that IsAtEnd() is invalid and will lead to undefined behavior.
Definition at line 259 of file readWriteIterator.h.
|
inline |
Returns pointer to current element. Calling this on an iterator that IsAtEnd() is invalid and will lead to undefined behavior.
Definition at line 148 of file readWriteIterator.h.
| bool VdfReadWriteIterator< T >::operator== | ( | const VdfReadWriteIterator< T > & | rhs | ) | const |
Returns true if this iterator and rhs compare equal.
Definition at line 238 of file readWriteIterator.h.
|
friend |
Definition at line 172 of file readWriteIterator.h.