![]() |
AJA NTV2 SDK
17.6.0.2675
NTV2 SDK 17.6.0.2675
|
This struct is used to augment the default full-frame AutoCirculate DMA transfer to accommodate multiple discontiguous "segments" of a video frame. The NTV2FieldBurn Demo demo app shows how this can be used. Other examples: More...
#include <ntv2publicinterface.h>
Public Member Functions | |
| NTV2SegmentedDMAInfo () | |
| Constructs a disabled NTV2SegmentedDMAInfo struct. More... | |
| NTV2SegmentedDMAInfo (const ULWord inNumSegments, const ULWord inNumActiveBytesPerRow, const ULWord inHostBytesPerRow, const ULWord inDeviceBytesPerRow) | |
| Constructs an NTV2SegmentedDMAInfo struct from a segment count, a host pitch, and device pitch value. More... | |
| void | Set (const ULWord inNumSegments, const ULWord inNumActiveBytesPerRow, const ULWord inHostBytesPerRow, const ULWord inDeviceBytesPerRow) |
| Sets the NTV2SegmentedDMAInfo struct members. More... | |
| void | Reset (void) |
| Resets the NTV2SegmentedDMAInfo struct members to their default values (normal, non-segmented AutoCirculate DMA transfers). More... | |
| ULWord | GetSegmentCount (void) const |
| bool | IsSegmented (void) const |
| bool | RPCEncode (NTV2_RPC_BLOB_TYPE &outBlob) |
| bool | RPCDecode (const NTV2_RPC_BLOB_TYPE &inBlob, size_t &inOutIndex) |
| bool | RPCDecodeClient (const NTV2_RPC_BLOB_TYPE &inBlob, size_t &inOutIndex) |
| bool | RPCEncodeClient (NTV2_RPC_BLOB_TYPE &inBlob) |
| bool | RPCDecodeServer (const NTV2_RPC_BLOB_TYPE &inBlob, size_t &inOutIndex) |
| bool | RPCEncodeServer (NTV2_RPC_BLOB_TYPE &inBlob) |
Public Attributes | |
| ULWord | acNumSegments |
| Number of segments of size ::AUTOCIRCULATE_TRANSFER::acVideoBuffer.fByteCount to transfer. Zero or 1 means normal (unsegmented) transfer. More... | |
| ULWord | acNumActiveBytesPerRow |
| Number of active bytes in a row of video. More... | |
| ULWord | acSegmentHostPitch |
| Offset, in bytes, between the start of one host segment and the start of the next host segment (i.e. host memory bytes-per-row). More... | |
| ULWord | acSegmentDevicePitch |
| Offset, in bytes, between the start of one device segment and the start of the next device segment (i.e. device memory bytes-per-row). More... | |
This struct is used to augment the default full-frame AutoCirculate DMA transfer to accommodate multiple discontiguous "segments" of a video frame. The NTV2FieldBurn Demo demo app shows how this can be used. Other examples:
Definition at line 7287 of file ntv2publicinterface.h.
|
explicit |
Constructs a disabled NTV2SegmentedDMAInfo struct.
Definition at line 2753 of file ntv2publicinterface.cpp.
|
explicit |
Constructs an NTV2SegmentedDMAInfo struct from a segment count, a host pitch, and device pitch value.
| [in] | inNumSegments | Specifies the number of segments (lines) to DMA. |
| [in] | inNumActiveBytesPerRow | Specifies the number of active bytes in a row of video. |
| [in] | inHostBytesPerRow | Specifies the offset, in bytes, between two adjacent segments on the host. |
| [in] | inDeviceBytesPerRow | Specifies the offset, in bytes, between two adjacent segments on the device. |
Definition at line 2759 of file ntv2publicinterface.cpp.
|
inline |
Definition at line 7329 of file ntv2publicinterface.h.
|
inline |
Definition at line 7334 of file ntv2publicinterface.h.
| void NTV2SegmentedDMAInfo::Reset | ( | void | ) |
Resets the NTV2SegmentedDMAInfo struct members to their default values (normal, non-segmented AutoCirculate DMA transfers).
Definition at line 2779 of file ntv2publicinterface.cpp.
| bool NTV2SegmentedDMAInfo::RPCDecode | ( | const NTV2_RPC_BLOB_TYPE & | inBlob, |
| size_t & | inOutIndex | ||
| ) |
Definition at line 4165 of file ntv2publicinterface.cpp.
| bool NTV2SegmentedDMAInfo::RPCDecodeClient | ( | const NTV2_RPC_BLOB_TYPE & | inBlob, |
| size_t & | inOutIndex | ||
| ) |
| bool NTV2SegmentedDMAInfo::RPCDecodeServer | ( | const NTV2_RPC_BLOB_TYPE & | inBlob, |
| size_t & | inOutIndex | ||
| ) |
| bool NTV2SegmentedDMAInfo::RPCEncode | ( | NTV2_RPC_BLOB_TYPE & | outBlob | ) |
Definition at line 4156 of file ntv2publicinterface.cpp.
| bool NTV2SegmentedDMAInfo::RPCEncodeClient | ( | NTV2_RPC_BLOB_TYPE & | inBlob | ) |
| bool NTV2SegmentedDMAInfo::RPCEncodeServer | ( | NTV2_RPC_BLOB_TYPE & | inBlob | ) |
| void NTV2SegmentedDMAInfo::Set | ( | const ULWord | inNumSegments, |
| const ULWord | inNumActiveBytesPerRow, | ||
| const ULWord | inHostBytesPerRow, | ||
| const ULWord | inDeviceBytesPerRow | ||
| ) |
Sets the NTV2SegmentedDMAInfo struct members.
| [in] | inNumSegments | Specifies the number of segments (lines) to DMA. If 1 or zero, performs a Reset, and the remaining parameters are ignored. |
| [in] | inNumActiveBytesPerRow | Specifies the number of active bytes in a row of video. |
| [in] | inHostBytesPerRow | Specifies the offset, in bytes, between two adjacent segments on the host. |
| [in] | inDeviceBytesPerRow | Specifies the offset, in bytes, between two adjacent segments on the device. |
Definition at line 2765 of file ntv2publicinterface.cpp.
| ULWord NTV2SegmentedDMAInfo::acNumActiveBytesPerRow |
Number of active bytes in a row of video.
Definition at line 7290 of file ntv2publicinterface.h.
| ULWord NTV2SegmentedDMAInfo::acNumSegments |
Number of segments of size ::AUTOCIRCULATE_TRANSFER::acVideoBuffer.fByteCount to transfer. Zero or 1 means normal (unsegmented) transfer.
Definition at line 7288 of file ntv2publicinterface.h.
| ULWord NTV2SegmentedDMAInfo::acSegmentDevicePitch |
Offset, in bytes, between the start of one device segment and the start of the next device segment (i.e. device memory bytes-per-row).
Definition at line 7293 of file ntv2publicinterface.h.
| ULWord NTV2SegmentedDMAInfo::acSegmentHostPitch |
Offset, in bytes, between the start of one host segment and the start of the next host segment (i.e. host memory bytes-per-row).
Definition at line 7291 of file ntv2publicinterface.h.