RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
rawspeed::iRectangle2D Class Referencefinal

#include "adt/Point.h"

Collaboration diagram for rawspeed::iRectangle2D:
[legend]

Public Member Functions

constexpr iRectangle2D ()=default
constexpr iRectangle2D (const iPoint2D &pos_, const iPoint2D &dim_)
constexpr iRectangle2D (int w, int h)
constexpr iRectangle2D (int x_pos, int y_pos, int w, int h)
constexpr int getTop () const
constexpr int getBottom () const
constexpr int getLeft () const
constexpr int getRight () const
constexpr int getWidth () const
constexpr int getHeight () const
constexpr iPoint2D getTopLeft () const
constexpr iPoint2D getBottomRight () const
constexpr iPoint2D getTopRight () const
constexpr iPoint2D getBottomLeft () const
constexpr bool RAWSPEED_READONLY hasPositiveArea () const
constexpr bool RAWSPEED_READONLY isPointInside (const iPoint2D &subPoint) const
constexpr bool RAWSPEED_READONLY isPointInsideInclusive (const iPoint2D &subPoint) const
constexpr bool RAWSPEED_READONLY isThisInside (const iRectangle2D &superRect) const
auto area () const
void offset (const iPoint2D &offset_)
void setTopLeft (const iPoint2D &top_left)
void setBottomRightAbsolute (const iPoint2D &bottom_right)
void setAbsolute (const iPoint2D &top_left, const iPoint2D &bottom_right)
void setAbsolute (int x1, int y1, int x2, int y2)
void setSize (const iPoint2D &size)
bool cropArea ()
bool cropOffsetToZero ()
iRectangle2D getOverlap (const iRectangle2D &other) const
iRectangle2D combine (const iRectangle2D &other) const

Public Attributes

iPoint2D pos {0, 0}
iPoint2D dim {0, 0}

Detailed Description

Definition at line 107 of file Point.h.

Constructor & Destructor Documentation

◆ iRectangle2D() [1/4]

rawspeed::iRectangle2D::iRectangle2D ( )
constexprdefault

Referenced by combine(), getOverlap(), and isThisInside().

Here is the caller graph for this function:

◆ iRectangle2D() [2/4]

rawspeed::iRectangle2D::iRectangle2D ( const iPoint2D & pos_,
const iPoint2D & dim_ )
inlineconstexpr

Definition at line 110 of file Point.h.

References dim, and pos.

◆ iRectangle2D() [3/4]

rawspeed::iRectangle2D::iRectangle2D ( int w,
int h )
inlineconstexpr

Definition at line 113 of file Point.h.

References dim.

◆ iRectangle2D() [4/4]

rawspeed::iRectangle2D::iRectangle2D ( int x_pos,
int y_pos,
int w,
int h )
inlineconstexpr

Definition at line 114 of file Point.h.

References pos.

Member Function Documentation

◆ area()

auto rawspeed::iRectangle2D::area ( ) const
inlinenodiscard

Definition at line 151 of file Point.h.

References dim, and rawspeed::implicit_cast().

Referenced by rawspeed::RawImageData::clearArea().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ combine()

iRectangle2D rawspeed::iRectangle2D::combine ( const iRectangle2D & other) const
inlinenodiscard

Definition at line 210 of file Point.h.

References iRectangle2D(), getBottomRight(), pos, setAbsolute(), rawspeed::iPoint2D::x, and rawspeed::iPoint2D::y.

Here is the call graph for this function:

◆ cropArea()

bool rawspeed::iRectangle2D::cropArea ( )
inline

Definition at line 177 of file Point.h.

References dim, and hasPositiveArea().

Referenced by cropOffsetToZero().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cropOffsetToZero()

bool rawspeed::iRectangle2D::cropOffsetToZero ( )
inline

Definition at line 186 of file Point.h.

References cropArea(), dim, pos, rawspeed::iPoint2D::x, and rawspeed::iPoint2D::y.

Here is the call graph for this function:

◆ getBottom()

int rawspeed::iRectangle2D::getBottom ( ) const
inlinenodiscardconstexpr

Definition at line 118 of file Point.h.

References dim, and pos.

Referenced by rawspeed::RawImageData::clearArea(), and rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::evaluateConsecutiveTiles().

Here is the caller graph for this function:

◆ getBottomLeft()

iPoint2D rawspeed::iRectangle2D::getBottomLeft ( ) const
inlinenodiscardconstexpr

Definition at line 128 of file Point.h.

References dim, and pos.

Referenced by rawspeed::anonymous_namespace{Cr2DecompressorImpl.h}::evaluateConsecutiveTiles(), rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::evaluateConsecutiveTiles(), and rawspeed::Cr2OutputTileIterator::operator++().

Here is the caller graph for this function:

◆ getBottomRight()

iPoint2D rawspeed::iRectangle2D::getBottomRight ( ) const
inlinenodiscardconstexpr

◆ getHeight()

int rawspeed::iRectangle2D::getHeight ( ) const
inlinenodiscardconstexpr

Definition at line 122 of file Point.h.

References dim.

Referenced by rawspeed::DngOpcodes::FixBadPixelsList::FixBadPixelsList(), rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::isValidImageGrid(), rawspeed::Cr2OutputTileIterator::operator*(), and rawspeed::Cr2OutputTileIterator::operator++().

Here is the caller graph for this function:

◆ getLeft()

int rawspeed::iRectangle2D::getLeft ( ) const
inlinenodiscardconstexpr

Definition at line 119 of file Point.h.

References pos.

Referenced by rawspeed::DngOpcodes::FixBadPixelsList::FixBadPixelsList(), rawspeed::DngOpcodes::PixelOpcode::applyOP(), rawspeed::RawImageData::clearArea(), and rawspeed::anonymous_namespace{Cr2DecompressorImpl.h}::evaluateConsecutiveTiles().

Here is the caller graph for this function:

◆ getOverlap()

iRectangle2D rawspeed::iRectangle2D::getOverlap ( const iRectangle2D & other) const
inlinenodiscard

Definition at line 200 of file Point.h.

References iRectangle2D(), getBottomRight(), pos, setAbsolute(), rawspeed::iPoint2D::x, and rawspeed::iPoint2D::y.

Referenced by rawspeed::RawImageData::clearArea().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getRight()

int rawspeed::iRectangle2D::getRight ( ) const
inlinenodiscardconstexpr

Definition at line 120 of file Point.h.

References dim, and pos.

Referenced by rawspeed::anonymous_namespace{Cr2DecompressorImpl.h}::evaluateConsecutiveTiles().

Here is the caller graph for this function:

◆ getTop()

int rawspeed::iRectangle2D::getTop ( ) const
inlinenodiscardconstexpr

Definition at line 117 of file Point.h.

References pos.

Referenced by rawspeed::DngOpcodes::FixBadPixelsList::FixBadPixelsList(), rawspeed::DngOpcodes::PixelOpcode::applyOP(), rawspeed::RawImageData::clearArea(), rawspeed::anonymous_namespace{Cr2DecompressorImpl.h}::evaluateConsecutiveTiles(), and rawspeed::Cr2OutputTileIterator::operator*().

Here is the caller graph for this function:

◆ getTopLeft()

iPoint2D rawspeed::iRectangle2D::getTopLeft ( ) const
inlinenodiscardconstexpr

Definition at line 123 of file Point.h.

References pos.

Referenced by rawspeed::DngOpcodes::ROIOpcode::ROIOpcode(), rawspeed::anonymous_namespace{Cr2DecompressorImpl.h}::evaluateConsecutiveTiles(), rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::evaluateConsecutiveTiles(), isPointInside(), isPointInsideInclusive(), isThisInside(), and rawspeed::DngDecoder::parseACTIVEAREA().

Here is the caller graph for this function:

◆ getTopRight()

iPoint2D rawspeed::iRectangle2D::getTopRight ( ) const
inlinenodiscardconstexpr

Definition at line 125 of file Point.h.

References dim, and pos.

Referenced by rawspeed::anonymous_namespace{Cr2DecompressorImpl.h}::evaluateConsecutiveTiles(), and rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::evaluateConsecutiveTiles().

Here is the caller graph for this function:

◆ getWidth()

int rawspeed::iRectangle2D::getWidth ( ) const
inlinenodiscardconstexpr

Definition at line 121 of file Point.h.

References dim.

Referenced by rawspeed::DngOpcodes::FixBadPixelsList::FixBadPixelsList(), rawspeed::RawImageData::clearArea(), rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::isValidImageGrid(), and rawspeed::Cr2OutputTileIterator::operator++().

Here is the caller graph for this function:

◆ hasPositiveArea()

bool RAWSPEED_READONLY rawspeed::iRectangle2D::hasPositiveArea ( ) const
inlinenodiscardconstexpr

Definition at line 131 of file Point.h.

References dim.

Referenced by cropArea(), rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::isValidImageGrid(), and rawspeed::RawImageData::subFrame().

Here is the caller graph for this function:

◆ isPointInside()

bool RAWSPEED_READONLY rawspeed::iRectangle2D::isPointInside ( const iPoint2D & subPoint) const
inlinenodiscardconstexpr

Definition at line 136 of file Point.h.

References getBottomRight(), and getTopLeft().

Referenced by rawspeed::DngOpcodes::FixBadPixelsList::FixBadPixelsList().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isPointInsideInclusive()

bool RAWSPEED_READONLY rawspeed::iRectangle2D::isPointInsideInclusive ( const iPoint2D & subPoint) const
inlinenodiscardconstexpr

Definition at line 141 of file Point.h.

References getBottomRight(), and getTopLeft().

Referenced by rawspeed::DngOpcodes::ROIOpcode::ROIOpcode(), rawspeed::DngDecoder::decodeMaskedAreas(), rawspeed::DngDecoder::handleMetadata(), and rawspeed::DngDecoder::parseACTIVEAREA().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isThisInside()

bool RAWSPEED_READONLY rawspeed::iRectangle2D::isThisInside ( const iRectangle2D & superRect) const
inlinenodiscardconstexpr

Definition at line 146 of file Point.h.

References iRectangle2D(), getBottomRight(), and getTopLeft().

Referenced by rawspeed::DngOpcodes::FixBadPixelsList::FixBadPixelsList(), rawspeed::anonymous_namespace{PanasonicV8Decompressor.cpp}::isValidImageGrid(), and rawspeed::DngDecoder::parseACTIVEAREA().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ offset()

void rawspeed::iRectangle2D::offset ( const iPoint2D & offset_)
inline

Definition at line 155 of file Point.h.

References pos.

◆ setAbsolute() [1/2]

void rawspeed::iRectangle2D::setAbsolute ( const iPoint2D & top_left,
const iPoint2D & bottom_right )
inline

Definition at line 165 of file Point.h.

References pos, and setBottomRightAbsolute().

Referenced by combine(), getOverlap(), and setAbsolute().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setAbsolute() [2/2]

void rawspeed::iRectangle2D::setAbsolute ( int x1,
int y1,
int x2,
int y2 )
inline

Definition at line 169 of file Point.h.

References setAbsolute().

Here is the call graph for this function:

◆ setBottomRightAbsolute()

void rawspeed::iRectangle2D::setBottomRightAbsolute ( const iPoint2D & bottom_right)
inline

Definition at line 161 of file Point.h.

References dim, and pos.

Referenced by rawspeed::DngDecoder::parseACTIVEAREA(), and setAbsolute().

Here is the caller graph for this function:

◆ setSize()

void rawspeed::iRectangle2D::setSize ( const iPoint2D & size)
inline

Definition at line 173 of file Point.h.

References dim.

◆ setTopLeft()

void rawspeed::iRectangle2D::setTopLeft ( const iPoint2D & top_left)
inline

Definition at line 158 of file Point.h.

References pos.

Referenced by rawspeed::DngDecoder::parseACTIVEAREA().

Here is the caller graph for this function:

Member Data Documentation

◆ dim

◆ pos


The documentation for this class was generated from the following file: