MCPcopy Create free account
hub / github.com/PDAL/PDAL / BitpackIntegerDecoder

Method BitpackIntegerDecoder

plugins/e57/libE57Format/src/Decoder.cpp:666–682  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

664
665template <typename RegisterT>
666BitpackIntegerDecoder<RegisterT>::BitpackIntegerDecoder( bool isScaledInteger,
667 unsigned bytestreamNumber,
668 SourceDestBuffer &dbuf, int64_t minimum,
669 int64_t maximum, double scale,
670 double offset, uint64_t maxRecordCount ) :
671 BitpackDecoder( bytestreamNumber, dbuf, sizeof( RegisterT ), maxRecordCount ),
672 isScaledInteger_( isScaledInteger ), minimum_( minimum ), maximum_( maximum ), scale_( scale ),
673 offset_( offset )
674{
675 // Get pointer to parent ImageFileImpl
676 ImageFileImplSharedPtr imf( dbuf.impl()->destImageFile() ); //??? should be function for this,
677 // imf->parentFile() --> ImageFile?
678
679 bitsPerRecord_ = imf->bitsNeeded( minimum_, maximum_ );
680 destBitMask_ =
681 ( bitsPerRecord_ == 64 ) ? ~0 : static_cast<RegisterT>( 1ULL << bitsPerRecord_ ) - 1;
682}
683
684template <typename RegisterT>
685size_t BitpackIntegerDecoder<RegisterT>::inputProcessAligned( const char *inbuf,

Callers

nothing calls this directly

Calls 2

bitsNeededMethod · 0.80
destImageFileMethod · 0.45

Tested by

no test coverage detected