Inherited by DD::Image::DeepOutputPixel.
Public Types | |
enum | Ordering { eUnordered, eZAscending, eZDescending } |
Public Member Functions | |
DeepPixel (const DD::Image::ChannelMap &channels, const float *pixels, size_t dataCount, Ordering ordering) | |
const ChannelMap & | channels () const |
size_t | getSampleCount () const |
const float * | data () const |
size_t | getDataCount () const |
const float * | getUnorderedSample (size_t sampNo) const |
const float & | getUnorderedSample (size_t sampNo, DD::Image::Channel channel) const |
const float & | getOrderedSample (size_t depthIdx, DD::Image::Channel channel) const |
Static Public Member Functions | |
static Ordering | SwapOrdering (Ordering ordering) |
Protected Member Functions | |
void | makeSampleOrder () const |
Protected Attributes | |
const DD::Image::ChannelMap & | _channels |
const float * | _data |
size_t | _dataCount |
size_t | _chanCount |
size_t | _sampleCount |
Ordering | _ordering |
std::vector< size_t > | _sampleOrder |
bool | _doneSampleOrder |
Friends | |
class | DeepPlane |
DeepPixel is a helper class for accessing DeepPlanes. It represents all the data at a particular x/y position in a DeepPlane. It does not contain its own copy of the data, and remains valid for only as long as the DeepPlane it is associated with exists.
|
inline |
Constructor. Usually not accessed directly, invoked by DeepPlane::getPixel
Swap the pixel ordering to the other way around. Unordered remains unordered, but Z-ascending and Z-descending swap.
|
protected |
Build up the sample order index
References _chanCount, _channels, _data, _doneSampleOrder, _sampleOrder, DD::Image::ChannelMap::chanNo(), and getSampleCount().
|
inline |
Get the channels that this DeepPixel contains
Referenced by DD::Image::DeepOutputPlane::addPixel(), DD::Image::DeepLightSample::DeepLightSample(), and DD::Image::DeepSample::DeepSample().
|
inline |
Get the number of samples
Referenced by makeSampleOrder().
|
inline |
Get the pointer to the data
Referenced by DD::Image::DeepOutputPlane::addPixel().
|
inline |
Get the total number of data elements
Referenced by DD::Image::DeepOutputPlane::addPixel().
|
inline |
Get a pointer to the pixel data for a particular sample number. Data will be the channels present in channels(), ordered by numeric channel id. Samples are in whatever order they happen to be in the pixel.
Referenced by DD::Image::DeepLightSample::DeepLightSample(), and DD::Image::DeepSample::DeepSample().
|
inline |
Get a particular sample and channel. Samples are in whatever order they happen to be in the pixel.
References DD::Image::ChannelMap::chanNo(), and DD::Image::ChannelMap::contains().
const float & DD::Image::DeepPixel::getOrderedSample | ( | size_t | depthIdx, |
DD::Image::Channel | channel | ||
) | const |
Get a particle sample (by depth) and channel. Samples will be ordered in descending order.
Referenced by DD::Image::DeepLightSample::DeepLightSample(), DD::Image::DeepSample::DeepSample(), and DD::Image::DeepOutputPixel::getWritableOrderedSample().
|
protected |
The channels that this DeepPixel is for.
Referenced by makeSampleOrder().
|
protected |
The raw data for the DeepPixel
Referenced by makeSampleOrder().
|
protected |
the amount of floats pointed to by _data for this pixel
|
protected |
the number of channels present in _channels.
Referenced by makeSampleOrder().
|
protected |
The number of samples (equivalent to _dataCount / _chanCount)
|
protected |
The order in which the samples are stored (unordered, z-ascending, z-descending)
|
mutableprotected |
An index for accessing the samples in z-order
Referenced by makeSampleOrder().
|
mutableprotected |
Whether or not the _sampleOrder index has been built
Referenced by makeSampleOrder().
©2021 The Foundry Visionmongers, Ltd. All Rights Reserved. |