56 bool init(
void)
override;
82 bool compressT2(uint32_t* packet_bytes_written);
83 bool rateAllocate(uint32_t* allPacketBytes,
bool disableRateControl);
A collection of tasks which can be scheduled as a single task.
Definition FlowComponent.h:28
Definition CodeStream.h:108
Definition PacketTracker.h:28
ResWindow.
Definition CompressedChunkCache.h:36
Interface for managing tile compression.
Definition ITileProcessorCompress.h:31
Tile coding parameters : this structure is used to store coding/decoding parameters common to all til...
Definition CodingParams.h:124
void syncPluginCodeBlockData()
Definition TileProcessor_RateControl.cpp:179
void makeLayerSimple(uint16_t layno, double thresh, bool finalAttempt)
Definition TileProcessor_RateControl.cpp:817
void setFirstPocTilePart(bool res) override
Sets whether this tile part is the first POC tile part.
Definition TileProcessorCompress.cpp:300
std::vector< std::unique_ptr< WaveletFwdScheduleData > > dwtScratch_
Definition TileProcessorCompress.h:115
void setProgIterNum(uint32_t num) override
Sets the current progression iterator number.
Definition TileProcessorCompress.cpp:648
bool first_poc_tile_part_
Compression Only true for first POC tile part, otherwise false.
Definition TileProcessorCompress.h:97
uint32_t prog_iter_num
Definition TileProcessorCompress.h:104
void prepareBlockForFirstLayer(t1::CodeblockCompress *cblk)
bool rateAllocate(uint32_t *allPacketBytes, bool disableRateControl)
Definition TileProcessor_RateControl.cpp:65
bool compressT2(uint32_t *packet_bytes_written)
Definition TileProcessorCompress.cpp:287
PacketTracker * getPacketTracker(void) override
Gets the packet tracker.
Definition TileProcessorCompress.cpp:636
PacketTracker * packetTracker_
Definition TileProcessorCompress.h:108
bool makeLayerFeasible(uint16_t layno, uint16_t thresh, bool finalAttempt)
Definition TileProcessor_RateControl.cpp:102
bool canPreCalculateTileLen(void) override
Checks whether the tile length can be pre-calculated.
Definition TileProcessorCompress.cpp:187
std::atomic< bool > dagSuccess_
Definition TileProcessorCompress.h:116
bool pcrdBisectSimple(uint32_t *p_data_written, bool disableRateControl)
Definition TileProcessor_RateControl.cpp:502
uint32_t getPreCalculatedTileLen(void) override
Gets the pre-calculated tile length (for rate control optimization).
Definition TileProcessorCompress.cpp:183
void incTilePartCounter(void) override
Increments the tile-part counter.
Definition TileProcessorCompress.cpp:644
bool writeTilePartT2(uint32_t *tileBytesWritten) override
Writes the T2 part of the current tile part.
Definition TileProcessorCompress.cpp:198
void makeLayerFinal(uint16_t layno)
Definition TileProcessor_RateControl.cpp:907
bool pcrdBisectFeasible(uint32_t *p_data_written, bool disableRateControl)
Definition TileProcessor_RateControl.cpp:212
std::unique_ptr< FlowComponent > mctFlow_
Definition TileProcessorCompress.h:112
uint8_t getTilePartCounter(void) const override
Gets the current tile-part counter.
Definition TileProcessorCompress.cpp:640
bool ingestUncompressedData(uint8_t *p_src, uint64_t src_length) override
Ingests uncompressed image data into the tile.
Definition TileProcessorCompress.cpp:669
uint8_t tilePartCounter_
index of tile part being currently coded.
Definition TileProcessorCompress.h:102
void scheduleCompressT1()
Definition TileProcessorCompress.cpp:263
bool init(void) override
Initializes the TileProcessor.
Definition TileProcessorCompress.cpp:84
bool compressDAGSuccess(void) const
Definition TileProcessorCompress.cpp:496
std::vector< std::unique_ptr< FlowComponent > > dwtFlows_
Definition TileProcessorCompress.h:113
bool makeSingleLosslessLayer()
Definition TileProcessor_RateControl.cpp:93
uint8_t newTilePartProgressionPosition_
position of the tile part flag in progression order
Definition TileProcessorCompress.h:106
void transferTileDataFromImage(void)
~TileProcessorCompress() override
Destroys a TileProcessorCompress.
Definition TileProcessorCompress.cpp:79
std::unique_ptr< FlowComponent > t1Flow_
Definition TileProcessorCompress.h:114
void buildCompressDAG(void)
Definition TileProcessorCompress.cpp:305
TileProcessorCompress(uint16_t index, TileCodingParams *tcp, CodeStream *codeStream, IStream *stream)
Constructs a TileProcessorCompress.
Definition TileProcessorCompress.cpp:73
bool needsRateControl(void) override
Checks whether rate control is required for this tile.
Definition TileProcessor_RateControl.cpp:82
bool preCompressTile(size_t thread_id) override
Pre-compresses the tile (compression-only preparation).
Definition TileProcessorCompress.cpp:104
uint32_t preCalculatedTileLen_
Definition TileProcessorCompress.h:94
std::unique_ptr< tf::Taskflow > compressFlow_
Definition TileProcessorCompress.h:111
tf::Future< void > submitCompressDAG(void)
Definition TileProcessorCompress.cpp:491
bool doCompress(void) override
Performs the full tile compression (T1 + T2 + rate allocation).
Definition TileProcessorCompress.cpp:501
bool layerNeedsRateControl(uint16_t layno)
Definition TileProcessor_RateControl.cpp:76
void dcLevelShiftCompress()
Definition TileProcessorCompress.cpp:217
bool canWritePocMarker(void) override
Checks whether a POC marker can be written for this tile.
Definition TileProcessorCompress.cpp:191
TileProcessor(uint16_t index, TileCodingParams *tcp, CodeStream *codeStream, IStream *stream, bool isCompressor, uint32_t tileCacheStrategy)
Constructs a TileProcessor.
Definition TileProcessor.cpp:79
Definition WaveletFwd.h:35
Stores information about compression code block.
Definition CodeblockCompress.h:31