STE-Industries: utilities testing
|
Go to the documentation of this file.
13 # if !defined BITMAP_H
54 static constexpr
unsigned int
80 static constexpr
unsigned int
94 static constexpr
unsigned int
99 static constexpr
unsigned int
104 static constexpr
unsigned int
109 static constexpr
unsigned int
139 static constexpr
unsigned int
144 static constexpr
unsigned int
150 static constexpr
unsigned int
235 "Processing strip %" PRIuFAST32
"\n";
369 unsigned int Colum) noexcept;
372 Image,
register const uint8_t*
373 ColorPointer,
register
375 register const uint_least32_t
378 register const uint_least32_t
380 [UINT8_MAX + 1]) noexcept;
383 CurrentGenerator, register const
388 CurrentGenerator, register const
402 CurrentGenerator, const
545 unsigned int Column)
const
549 unsigned int Column)
const
559 register const uint8_t*
561 register unsigned int Steps,
564 PixelInformationPointer,
568 CurrentGenerator,
register
573 CorrectedColorPointer,
574 register const uint8_t*
575 OriginalColorPointer,
576 register unsigned int StartRow,
577 register unsigned int EndRow,
578 register unsigned int
585 PixelInformationPointer,
588 register const uint_least32_t
589 DivisionTable [UINT8_MAX + 1])
593 CorrectedColorPointer,
594 register const uint8_t*
595 OriginalColorPointer,
596 register
unsigned int
603 PixelInformationPointer,
607 DivisionTable [UINT8_MAX + 1])
614 uint_fast32_t Divisor) noexcept;
616 static uint_fast32_t
LoadInteger(const uint8_t Buffer [],
617 unsigned int Size) noexcept;
621 unsigned int Size) noexcept;
637 uint_fast32_t
GetWidth(
void) const noexcept;
639 uint_fast32_t
GetHeight(
void) const noexcept;
641 uint_fast32_t
GetSize(
void) const noexcept;
651 void ReadFile(const
char* Path) noexcept(false);
653 void WriteFile(const
char* Path) noexcept(false);
656 NUMBER_OF_GENERATORS + 1]) noexcept;
659 Parameters) noexcept(false);
667 # include "Bitmap.inl"
static constexpr unsigned int ATTRACTION_SCALE
static uint_fast32_t LoadInteger(const uint8_t Buffer[], unsigned int Size) noexcept
static constexpr unsigned int OFFSET_OF_BITS_PER_PIXEL
static constexpr unsigned int OFFSET_OF_COMPRESSION
static constexpr unsigned int HEADER_SIZE
void DestroyImage(void) noexcept
unsigned int ComputeTermite(register unsigned int MaximumValue, register IndexType PixelIndex, register const uint8_t *ColorPointer, register unsigned int Steps, register const PixelInformationType *PixelInformationPointer, register RepulsionType *RepulsionPointer, register RandomGenerator &CurrentGenerator, register PathFunction PathFinder) const noexcept
IndexType MakeIndex(unsigned int Row, unsigned int Column) const noexcept
static constexpr unsigned int OFFSET_OF_HEIGHT
unsigned short RepulsionTable[REPULSION_TABLE_SIZE]
uint8_t * PixelPointer[NUMBER_OF_COLORS]
static constexpr unsigned int HEADER_NAME_LENGTH
static constexpr const char * STRIP_INDEX_FORMAT
uint_fast32_t ComputeLineSize(void) const noexcept
static constexpr unsigned int OFFSET_OF_IMAGE_SIZE
static void * CorrectFunction(void *Argument) noexcept(false)
uint_fast32_t GetWidth(void) const noexcept
bool ValidIndex(unsigned int Row, unsigned int Column) const noexcept
static constexpr unsigned int STRIP_HEIGHT
uint8_t * CorrectedColorPointer
const uint8_t * OriginalColorPointer
uint_fast32_t HorizontalResolution
@ MAXIMUM
The step with maximum probability is chosen.
unsigned int MaximumValue
static constexpr size_t REPULSION_TABLE_SIZE
Bitmap Correct(register const CorrectionParameters &Parameters) noexcept(false)
static constexpr unsigned int OFFSET_OF_BITMAP_OFFSET
static constexpr unsigned int LONG_DATA_SIZE
static constexpr unsigned int OFFSET_OF_COLOR_PLANES
uint_fast32_t GetSize(void) const noexcept
static constexpr unsigned int OFFSET_OF_FILE_SIZE
const PixelInformationType * PixelInformationPointer
void WriteFile(const char *Path) noexcept(false)
static void StoreInteger(uint8_t Buffer[], uint_fast32_t Value, unsigned int Size) noexcept
static uint_fast32_t RoundedDivide(uint_fast32_t Dividend, uint_fast32_t Divisor) noexcept
const CorrectionParameters * ParametersPointer
void Randomize(uint_fast32_t Seed[RandomGenerator::NUMBER_OF_GENERATORS+1]) noexcept
static constexpr unsigned int MAXIMUM_NUMBER_OF_THREADS
void ReadFile(const char *Path) noexcept(false)
bool IsOrthogonal(IndexType FirstIndex, IndexType SecondIndex) const noexcept
static constexpr unsigned int OFFSET_OF_NUMBER_OF_COLORS
static constexpr unsigned int MAXIMUM_NUMBER_OF_STEPS
static constexpr unsigned int SHORT_DATA_SIZE
static constexpr unsigned int DIB_HEADER_SIZE
static constexpr unsigned int VALID_COMPRESSION
static constexpr unsigned int REPULSION_SCALE
uint_fast32_t GetVerticalResolution(void) const noexcept
void AllocateImage(void) noexcept
static constexpr unsigned int OFFSET_OF_VERTICAL_RESOLUTION
static constexpr unsigned int MAXIMUM_HEIGHT
static constexpr unsigned int INITIAL_GENERATION
CorrectionDescriptorType * DescriptorPointer
unsigned int GetBitsPerPixel(void) const noexcept
void CorrectStrip(register uint8_t *CorrectedColorPointer, register const uint8_t *OriginalColorPointer, register unsigned int StartRow, register unsigned int EndRow, register unsigned int MaximumValue, register const CorrectionParameters &Parameters, register const PixelInformationType *PixelInformationPointer, register PathFunction PathFinder, register const uint_least32_t DivisionTable[UINT8_MAX+1]) const noexcept
uint_fast32_t VerticalResolution
RepulsionType * InitialRepulsionPointer
static constexpr unsigned int MAXIMUM_WIDTH
uint_fast32_t GetHeight(void) const noexcept
static const char *const OpenReadBinary
const uint_least32_t * DivisionTablePointer
static constexpr unsigned int MAXIMUM_NUMBER_OF_TERMITES
static constexpr unsigned int NUMBER_OF_COLORS
const CorrectionDescriptorType * GetStripDescriptor(void) noexcept
static constexpr unsigned int NUMBER_OF_NEIGHBOURS
static constexpr unsigned int OFFSET_OF_WIDTH
static const char HeaderName[HEADER_NAME_LENGTH]
static constexpr unsigned int OFFSET_OF_HORIZONTAL_RESOLUTION
static constexpr unsigned int TERMITES_SUM_SCALE
uint_fast32_t GetHorizontalResolution(void) const noexcept
IndexType(PixelInformationType::* PathFunction)(RandomGenerator &CurrentGenerator, const RepulsionType *RepulsionPointer) const
void CorrectColor(register uint8_t *CorrectedColorPointer, register const uint8_t *OriginalColorPointer, register unsigned int MaximumValue, register const CorrectionParameters &Parameters, register const PixelInformationType *PixelInformationPointer, register PathFunction PathFinder, const uint_least32_t DivisionTable[UINT8_MAX+1]) noexcept
static const char *const OpenWriteBinary
RandomGenerator Generator
static constexpr unsigned int MAXIMUM_BITMAP_SIZE
static constexpr unsigned int NUMBER_OF_COLOR_PLANES
static constexpr unsigned int OFFSET_OF_NUMBER_OF_IMPORTANT_COLORS