|
HDK
|
#include <PXL_DeepPixel.h>
Classes | |
| class | SampleKey |
Public Member Functions | |
| PXL_DeepPixel (const PXL_DeepChannelListPtr &channels, int sample_lists_per_pixel) | |
| ~PXL_DeepPixel () | |
| bool | isOpen () const |
| Test whether the pixel is accepting samples. More... | |
| bool | isMipStyle () const |
| bool | isRawStyle () const |
| const PXL_DeepChannelListPtr & | channels () const |
| Return channel list passed into the c-tor. More... | |
| void | startPixel (int x, int y, bool precomposted) |
| void | store (const PXL_DeepSampleListPtr &sample) |
| Store a sample for MIP style accumulation. More... | |
| void | store (float zfront, float zback, const float *channel_data, int flags, int sample_id) |
| PXL_DeepSampleListPtr | closePixel (const PXL_DeepCompressorPtr &compress) |
| float | samplez (const SampleKey &k) const |
| void | dump (const char *msg="") const |
| int | x () const |
| int | y () const |
Class to accumulate multiple deep samples and merge them into a single list.
Since this class allocates memory, it can be reused for multiple pixels, reusing it's buffers.
There are two modes of operation for the class:
extract method will merge them into a single PXL_DeepSampleListPtr based on the compressor passed in.Accept one to four PXL_DeepSampleListPtr objects. This mode is typically used when creating MIP maps. The extract method will call the compressor to merge the existing PXL_DeepSampleListPtr objects into a single PXL_DeepSampleListPtr.
Definition at line 35 of file PXL_DeepPixel.h.
| PXL_DeepPixel::PXL_DeepPixel | ( | const PXL_DeepChannelListPtr & | channels, |
| int | sample_lists_per_pixel | ||
| ) |
| PXL_DeepPixel::~PXL_DeepPixel | ( | ) |
|
inline |
Return channel list passed into the c-tor.
Definition at line 82 of file PXL_DeepPixel.h.
| PXL_DeepSampleListPtr PXL_DeepPixel::closePixel | ( | const PXL_DeepCompressorPtr & | compress | ) |
Close the pixel, returning the result of the compressor's merge operation.
| void PXL_DeepPixel::dump | ( | const char * | msg = "" | ) | const |
|
inline |
Test whether the pixel is collecting PXL_DeepSampleListPtr's (rather than raw float samples). Note, if no samples have been written, the pixel could be in both MIP and raw style.
Definition at line 75 of file PXL_DeepPixel.h.
|
inline |
Test whether the pixel is accepting samples.
Definition at line 70 of file PXL_DeepPixel.h.
|
inline |
Test whether the pixel is collecting raw float data (rather than PXL_DeepSampleListPtr's). Note, if no samples have been written, the pixel could be in both MIP and raw style.
Definition at line 79 of file PXL_DeepPixel.h.
Definition at line 124 of file PXL_DeepPixel.h.
Start collecting samples for the given pixel. The precomposited flag indicates whether the incoming samples are pre-composited or uncomposited.
| void PXL_DeepPixel::store | ( | const PXL_DeepSampleListPtr & | sample | ) |
Store a sample for MIP style accumulation.
| void PXL_DeepPixel::store | ( | float | zfront, |
| float | zback, | ||
| const float * | channel_data, | ||
| int | flags, | ||
| int | sample_id | ||
| ) |
Store a raw sample. The samples do not have to be added in order.
zfront zback zfront.channel_data channels()->totalSize() and the data in the array should be ordered according to the channel order.flags sample_id coverage for the pixel.
|
inline |
Return coordinate passed into startPixel()
Definition at line 120 of file PXL_DeepPixel.h.
|
inline |
Return coordinate passed into startPixel()
Definition at line 121 of file PXL_DeepPixel.h.