|
Grok 20.3.2
|
abstract class to graph and execute T1 tasks for windowed tile More...
#include <DecompressSchedulerExcalibur.h>
Public Member Functions | |
| DecompressSchedulerExcalibur (uint16_t numComps, uint8_t prec, CoderPool *streamPool) | |
| Constructs a SchedulerExcalibur. | |
| ~DecompressSchedulerExcalibur () override | |
| Destroys a SchedulerExcalibur. | |
| bool | scheduleT1 (ITileProcessor *tileProcessor) override |
| Schedules all T1 tasks for a ITileProcessor. | |
| void | release (void) override |
| Releases Taskflow resources. | |
| Public Member Functions inherited from grk::SchedulerExcalibur | |
| SchedulerExcalibur (uint16_t numComps) | |
| Constructs a SchedulerExcalibur. | |
| virtual | ~SchedulerExcalibur () |
| Destroys a SchedulerExcalibur. | |
| Public Member Functions inherited from grk::CodecScheduler | |
| CodecScheduler (uint16_t numComps) | |
| Contructs a CodecScheduler. | |
| virtual | ~CodecScheduler () |
| Destroys a CodecScheduler. | |
| void | run (void) |
| Runs tf::Executor. | |
| bool | wait (void) |
| Waits for tf::Executor to complete. | |
| Public Member Functions inherited from FlowComponent | |
| void | addTo (tf::Taskflow &composition) |
| Composes this FlowComponent's tf::Taskflow with another tf::Taskflow. | |
| void | precede (FlowComponent &successor) |
| Schedule this FlowComponent before another FlowComponent. | |
| void | precede (tf::Task &successor) |
| Schedule this Taskflow before another FlowComponent. | |
| tf::Task & | getCompositionTask (void) |
| void | conditional_precede (FlowComponent *root, FlowComponent *successor, std::function< int()> condition_lambda) |
| Conditionally schedule successor based on condition_lambda. | |
| FlowComponent * | name (const std::string &name) |
| Gets name of composition task. | |
| tf::Task & | nextTask () |
| Gets next task placeholder for componentFlow_. | |
Private Attributes | |
| DifferentialInfo * | differentialInfo_ |
| uint8_t | prec_ |
| precision of input image | |
| CoderPool | coderPool_ |
| CoderPool * | streamPool_ |
Additional Inherited Members | |
| Protected Member Functions inherited from grk::CodecScheduler | |
| void | releaseCoders (void) |
| Protected Attributes inherited from grk::CodecScheduler | |
| std::atomic_bool | success_ |
| atomic tracking of compress/decompress success | |
| uint16_t | numcomps_ |
| number of components | |
| std::vector< t1::ICoder * > | coders_ |
| pool of ICoder | |
| tf::Future< void > | runFuture_ |
| tf::Future<void> resulting from running scheduler | |
abstract class to graph and execute T1 tasks for windowed tile
Task scheduling will be performed by derived classes
| grk::DecompressSchedulerExcalibur::DecompressSchedulerExcalibur | ( | uint16_t | numComps, |
| uint8_t | prec, | ||
| CoderPool * | streamPool ) |
Constructs a SchedulerExcalibur.
| numComps | number of components |
| streamPool | code stream pool |
References differentialInfo_, prec_, grk::SchedulerExcalibur::SchedulerExcalibur(), and streamPool_.
|
override |
Destroys a SchedulerExcalibur.
References differentialInfo_.
|
overridevirtual |
Releases Taskflow resources.
Implements grk::CodecScheduler.
|
overridevirtual |
Schedules all T1 tasks for a ITileProcessor.
| proc | ITileProcessor |
Implements grk::CodecScheduler.
References coderPool_, grk::Tile::comps_, grk::TileComponent::currentPacketProgressionState_, differentialInfo_, grk::gain_b, TFSingleton::get(), grk::ResolutionChecker::getResBounds(), grk::ITileProcessor::getTCP(), grk::ITileProcessor::getTile(), grk::ITileProcessor::getTileCacheStrategy(), GRK_TILE_CACHE_ALL, grk::grklog, grk::TileComponent::isWholeTileDecoding(), grk::t1::CoderFactory::makeCoder(), TFSingleton::num_threads(), grk::CodecScheduler::numcomps_, grk::PacketProgressionState::numResolutionsRead(), prec_, streamPool_, and grk::CodecScheduler::success_.
|
private |
Referenced by scheduleT1().
|
private |
Referenced by DecompressSchedulerExcalibur(), scheduleT1(), and ~DecompressSchedulerExcalibur().
|
private |
precision of input image
Referenced by DecompressSchedulerExcalibur(), and scheduleT1().
|
private |
Referenced by DecompressSchedulerExcalibur(), and scheduleT1().