AJA NTV2 SDK
17.1.3.1410
NTV2 SDK 17.1.3.1410
|
Describes a segmented data transfer (copy or move) from a source memory location to a destination location, with independent pitch and direction attributes for source and destination. The simplest transfer, of course, has a single segment. More...
#include <ntv2publicinterface.h>
Public Member Functions | |
NTV2SegmentedXferInfo () | |
Constructs me as empty/invalid. More... | |
Inquiry | |
ULWord | getSourceEndOffset (void) const |
ULWord | getDestEndOffset (void) const |
std::ostream & | Print (std::ostream &inStrm, const bool inDumpSegments=false) const |
Writes a human-readable description of me into a given output stream. More... | |
std::string | getSourceCode (const bool inInclDecl=true) const |
bool | containsElementAtOffset (const ULWord inElementOffset) const |
bool | operator!= (const NTV2SegmentedXferInfo &inRHS) const |
bool | operator== (const NTV2SegmentedXferInfo &inRHS) const |
Changing | |
NTV2SegmentedXferInfo & | reset (void) |
Resets me to an invalid (all zero) state. More... | |
NTV2SegmentedXferInfo & | setSegmentInfo (const ULWord inNumSegs, const ULWord inSegLength) |
Sets both my segment count and length. More... | |
NTV2SegmentedXferInfo & | setSegmentCount (const ULWord inNumSegments) |
Sets my segment count. More... | |
NTV2SegmentedXferInfo & | setSegmentLength (const ULWord inNumElements) |
Sets my segment length. More... | |
NTV2SegmentedXferInfo & | setSourceInfo (const ULWord inOffset, const ULWord inPitch) |
A convenience function that sets both my source offset and pitch. More... | |
NTV2SegmentedXferInfo & | setSourceOffset (const ULWord inOffset) |
Sets my source offset. More... | |
NTV2SegmentedXferInfo & | setSourcePitch (const ULWord inPitch) |
Sets my source pitch. More... | |
NTV2SegmentedXferInfo & | setSourceDirection (const bool inTopDown) |
Sets my source direction. More... | |
NTV2SegmentedXferInfo & | setDestInfo (const ULWord inOffset, const ULWord inPitch) |
A convenience function that sets both my destination offset and pitch. More... | |
NTV2SegmentedXferInfo & | setDestOffset (const ULWord inOffset) |
Sets my destination offset. More... | |
NTV2SegmentedXferInfo & | setDestPitch (const ULWord inPitch) |
Sets my destination pitch. More... | |
NTV2SegmentedXferInfo & | setDestDirection (const bool inTopDown) |
Sets my destination scan direction. More... | |
NTV2SegmentedXferInfo & | setElementLength (const ULWord inBytesPerElement) |
Sets my element length. More... | |
NTV2SegmentedXferInfo & | swapSourceAndDestination (void) |
Swaps my source and destination offsets and pitches. More... | |
Describes a segmented data transfer (copy or move) from a source memory location to a destination location, with independent pitch and direction attributes for source and destination. The simplest transfer, of course, has a single segment.
A segmented transfer is described by these attributes:
Definition at line 5732 of file ntv2publicinterface.h.
|
inline |
Constructs me as empty/invalid.
Definition at line 5738 of file ntv2publicinterface.h.
bool NTV2SegmentedXferInfo::containsElementAtOffset | ( | const ULWord | inElementOffset | ) | const |
[in] | inElementOffset | Specifies the element offset of interest. |
Definition at line 1431 of file ntv2publicinterface.cpp.
|
inline |
Definition at line 5781 of file ntv2publicinterface.h.
string NTV2SegmentedXferInfo::getSourceCode | ( | const bool | inInclDecl = true | ) | const |
[in] | inInclDecl | If true, the default, include a declaration statement in the source code. |
Definition at line 1401 of file ntv2publicinterface.cpp.
|
inline |
Definition at line 5775 of file ntv2publicinterface.h.
bool NTV2SegmentedXferInfo::operator!= | ( | const NTV2SegmentedXferInfo & | inRHS | ) | const |
[in] | inRHS | Specifies the NTV2SegmentedXferInfo to compare with me. |
Definition at line 1454 of file ntv2publicinterface.cpp.
|
inline |
[in] | inRHS | Specifies the NTV2SegmentedXferInfo to compare with me. |
Definition at line 5817 of file ntv2publicinterface.h.
ostream & NTV2SegmentedXferInfo::Print | ( | std::ostream & | inStrm, |
const bool | inDumpSegments = false |
||
) | const |
Writes a human-readable description of me into a given output stream.
inStrm | A non-constant reference to the output stream that will receive the description. | |
[in] | inDumpSegments | If true, also dumps a description of each segment. Defaults to false. |
Definition at line 1376 of file ntv2publicinterface.cpp.
NTV2SegmentedXferInfo & NTV2SegmentedXferInfo::reset | ( | void | ) |
Resets me to an invalid (all zero) state.
Definition at line 1474 of file ntv2publicinterface.cpp.
|
inline |
Sets my destination scan direction.
[in] | inTopDown | Specify true to traverse the destination segments top-to-bottom; otherwise specify false for bottom-to-top. |
Definition at line 5917 of file ntv2publicinterface.h.
|
inline |
A convenience function that sets both my destination offset and pitch.
[in] | inOffset | The new offset, in elements, to the start of the first destination segment. |
[in] | inPitch | The new number of elements between each destination row. |
Definition at line 5895 of file ntv2publicinterface.h.
|
inline |
Sets my destination offset.
[in] | inOffset | The new offset, in elements, to the start of the first destination segment. |
Definition at line 5903 of file ntv2publicinterface.h.
|
inline |
Sets my destination pitch.
[in] | inPitch | The new number of elements between each destination row. |
Definition at line 5910 of file ntv2publicinterface.h.
|
inline |
Sets my element length.
[in] | inBytesPerElement | The new element size, in bytes. Must be a power of two (1, 2, 4, or 8). |
Definition at line 5925 of file ntv2publicinterface.h.
|
inline |
Sets my segment count.
[in] | inNumSegments | My new segment count. |
Definition at line 5841 of file ntv2publicinterface.h.
|
inline |
Sets both my segment count and length.
[in] | inNumSegs | My new segment count. |
[in] | inSegLength | My new segment length, in elements. |
Definition at line 5833 of file ntv2publicinterface.h.
|
inline |
Sets my segment length.
[in] | inNumElements | My new segment length, in elements. |
Definition at line 5849 of file ntv2publicinterface.h.
|
inline |
Sets my source direction.
[in] | inTopDown | Specify true to traverse the source segments top-to-bottom; otherwise specify false for bottom-to-top. |
Definition at line 5882 of file ntv2publicinterface.h.
|
inline |
A convenience function that sets both my source offset and pitch.
[in] | inOffset | The new offset, in elements, to the start of the first source segment. |
[in] | inPitch | The new number of elements between each source row. |
Definition at line 5858 of file ntv2publicinterface.h.
|
inline |
Sets my source offset.
[in] | inOffset | The new offset, in elements, to the start of the first source segment. |
Definition at line 5866 of file ntv2publicinterface.h.
|
inline |
Sets my source pitch.
[in] | inPitch | The new number of elements between each source row. |
Definition at line 5874 of file ntv2publicinterface.h.
NTV2SegmentedXferInfo & NTV2SegmentedXferInfo::swapSourceAndDestination | ( | void | ) |
Swaps my source and destination offsets and pitches.
Definition at line 1487 of file ntv2publicinterface.cpp.