Grok 12.0.1
|
#include <CompressScheduler.h>
Public Member Functions | |
CompressScheduler (Tile *tile, bool needsRateControl, TileCodingParams *tcp, const double *mct_norms, uint16_t mct_numcomps) | |
~CompressScheduler ()=default | |
bool | schedule (uint16_t compno) override |
![]() | |
Scheduler (Tile *tile) | |
virtual | ~Scheduler () |
void | graph (uint16_t compno) |
bool | run (void) |
ImageComponentFlow * | getImageComponentFlow (uint16_t compno) |
tf::Taskflow & | getCodecFlow (void) |
FlowComponent * | getPrePostProc (void) |
Private Member Functions | |
bool | scheduleBlocks (uint16_t compno) |
void | compress (std::vector< CompressBlockExec * > *blocks) |
bool | compress (size_t threadId, uint64_t maxBlocks) |
void | compress (T1Interface *impl, CompressBlockExec *block) |
Private Attributes | |
Tile * | tile |
std::mutex | distortion_mutex |
bool | needsRateControl |
CompressBlockExec ** | encodeBlocks |
std::atomic< int64_t > | blockCount |
TileCodingParams * | tcp_ |
const double * | mct_norms_ |
uint16_t | mct_numcomps_ |
Additional Inherited Members | |
![]() | |
std::atomic_bool | success |
std::vector< T1Interface * > | t1Implementations |
ImageComponentFlow ** | imageComponentFlows_ |
tf::Taskflow | codecFlow_ |
Tile * | tile_ |
uint16_t | numcomps_ |
FlowComponent * | prePostProc_ |
grk::CompressScheduler::CompressScheduler | ( | Tile * | tile, |
bool | needsRateControl, | ||
TileCodingParams * | tcp, | ||
const double * | mct_norms, | ||
uint16_t | mct_numcomps ) |
References grk::Tile::comps, grk::grk_read(), grk::Scheduler::imageComponentFlows_, grk::Scheduler::numcomps_, and tile.
|
default |
References blockCount, compress(), encodeBlocks, grk::grk_read(), and grk::Scheduler::t1Implementations.
|
private |
References compress(), encodeBlocks, ExecSingleton::get(), grk::grk_read(), and grk::Scheduler::t1Implementations.
Referenced by compress(), compress(), and scheduleBlocks().
|
private |
References grk::Tile::distortion, distortion_mutex, grk::grk_read(), needsRateControl, and tile.
Implements grk::Scheduler.
References scheduleBlocks().
References compress(), grk::Tile::comps, grk::Tile::distortion, ExecSingleton::get(), grk::grk_read(), grk::T1Factory::makeT1(), mct_norms_, mct_numcomps_, needsRateControl, grk::Tile::numcomps_, grk::Scheduler::t1Implementations, grk::TileCodingParams::tccps, tcp_, tile, and grk::grk_rect< T >::x0.
Referenced by schedule().
|
private |
Referenced by compress().
|
mutableprivate |
Referenced by compress().
|
private |
Referenced by compress(), and compress().
Referenced by scheduleBlocks().
|
private |
Referenced by scheduleBlocks().
|
private |
Referenced by compress(), and scheduleBlocks().
|
private |
Referenced by scheduleBlocks().
|
private |
Referenced by compress(), CompressScheduler(), and scheduleBlocks().