HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
VdfReadIterator< T > Class Template Reference

#include <readIterator.h>

+ Inheritance diagram for VdfReadIterator< T >:

Public Types

using value_type = const T
 
using difference_type = int
 
using reference = value_type &
 
using pointer = value_type *
 
using iterator_category = std::forward_iterator_tag
 

Public Member Functions

 VdfReadIterator (const VdfContext &context, const TfToken &inputName)
 
bool operator== (const VdfReadIterator &rhs) const
 
bool operator!= (const VdfReadIterator &rhs) const
 
VdfReadIteratoroperator++ ()
 
reference operator* () const
 
pointer operator-> () const
 
bool IsAtEnd () const
 
size_t ComputeSize () const
 
void AdvanceToEnd ()
 

Friends

template<typename >
class VdfSubrangeView
 
int Vdf_GetIteratorIndex (const VdfReadIterator &it)
 
bool Vdf_IsIteratorSourcePool (const VdfReadIterator &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
 

Detailed Description

template<typename T>
class VdfReadIterator< T >

An iterator that provides read access to input values using a context.

Note
This is a ForwardIterator with the exception of a missing post-increment operator. The implementation of a post-increment operator would be slower than that of pre-increment and to prevent erroneous use it has been omitted entirely.

Definition at line 38 of file readIterator.h.

Member Typedef Documentation

template<typename T>
using VdfReadIterator< T >::difference_type = int

The type used to identify distance between instances of this iterator.

Definition at line 48 of file readIterator.h.

template<typename T>
using VdfReadIterator< T >::iterator_category = std::forward_iterator_tag

The STL category of this iterator type.

Definition at line 60 of file readIterator.h.

template<typename T>
using VdfReadIterator< T >::pointer = value_type *

Type of a pointer to a value of this iterator.

Definition at line 56 of file readIterator.h.

template<typename T>
using VdfReadIterator< T >::reference = value_type &

Type of a reference to a value of this iterator.

Definition at line 52 of file readIterator.h.

template<typename T>
using VdfReadIterator< T >::value_type = const T

Type of the elements this iterator gives access to.

Definition at line 44 of file readIterator.h.

Constructor & Destructor Documentation

template<typename T >
VdfReadIterator< T >::VdfReadIterator ( const VdfContext context,
const TfToken inputName 
)

Constructs a read iterator

Definition at line 177 of file readIterator.h.

Member Function Documentation

template<typename T >
void VdfReadIterator< T >::AdvanceToEnd ( )

Advance the iterator to the end.

Definition at line 315 of file readIterator.h.

template<typename T >
size_t VdfReadIterator< T >::ComputeSize ( ) const

Returns the total number of data elements that will be iterated over.

Definition at line 267 of file readIterator.h.

template<typename T>
bool VdfReadIterator< T >::IsAtEnd ( ) const
inline

Returns true if the iterator is done iterating and false otherwise.

Definition at line 95 of file readIterator.h.

template<typename T>
bool VdfReadIterator< T >::operator!= ( const VdfReadIterator< T > &  rhs) const
inline

Returns true if this iterator and rhs do not compare equal.

Definition at line 72 of file readIterator.h.

template<typename T>
reference VdfReadIterator< T >::operator* ( ) const
inline

Returns reference to current element. Calling this on an iterator that IsAtEnd() is invalid and will lead to undefined behavior.

Definition at line 84 of file readIterator.h.

template<typename T >
VdfReadIterator< T > & VdfReadIterator< 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 239 of file readIterator.h.

template<typename T >
VdfReadIterator< T >::pointer VdfReadIterator< T >::operator-> ( ) const

Returns pointer to current element. Calling this on an iterator that IsAtEnd() is invalid and will lead to undefined behavior.

Definition at line 256 of file readIterator.h.

template<typename T >
bool VdfReadIterator< T >::operator== ( const VdfReadIterator< T > &  rhs) const

Returns true if this iterator and rhs compare equal.

Definition at line 228 of file readIterator.h.

Friends And Related Function Documentation

template<typename T>
int Vdf_GetIteratorIndex ( const VdfReadIterator< T > &  it)
friend

Definition at line 122 of file readIterator.h.

template<typename T>
bool Vdf_IsIteratorSourcePool ( const VdfReadIterator< T > &  it)
friend

Definition at line 127 of file readIterator.h.

template<typename T>
template<typename >
friend class VdfSubrangeView
friend

Definition at line 110 of file readIterator.h.


The documentation for this class was generated from the following file: