libimgdoc2
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
imgdoc2::ITileCoordinate Class Referenceabstract

#include <ITileCoordinate.h>

Inheritance diagram for imgdoc2::ITileCoordinate:
imgdoc2::ITileCoordinateMutate imgdoc2::TileCoordinate

Public Member Functions

virtual bool TryGetCoordinate (imgdoc2::Dimension dim, int *coordVal) const =0
 
virtual void EnumCoordinates (const std::function< bool(imgdoc2::Dimension, int)> &f) const =0
 
void EnumDimensions (const std::function< bool(imgdoc2::Dimension)> &f) const
 
bool operator== (const ITileCoordinate &other) const
 
bool operator!= (const ITileCoordinate &other) const
 
std::vector< imgdoc2::Dimension > GetDimensions () const
 

Static Public Member Functions

static bool AreEqual (const ITileCoordinate *a, const ITileCoordinate *b)
 
static bool IsValidDimension (imgdoc2::Dimension dimension)
 

Detailed Description

Definition of the interface representing a "tile coordinate". This interface is immutable and does not allow to mutate the data.

Member Function Documentation

◆ AreEqual()

static bool imgdoc2::ITileCoordinate::AreEqual ( const ITileCoordinate a,
const ITileCoordinate b 
)
inlinestatic

Determine if the two specified ITileCoordinate objects are equal. Equality is defined as having the same set of dimensions and the same values for each dimension. In addition, object identity is also regarded as equality, but comparison with nullptr is not regarded as equality (also - two nullptrs are regarded as unequal).

Parameters
aThe first ITileCoordinate to compare.
bThe second ITileCoordinate to compare.
Returns
True if equal, false if not.

◆ EnumCoordinates()

virtual void imgdoc2::ITileCoordinate::EnumCoordinates ( const std::function< bool(imgdoc2::Dimension, int)> &  f) const
pure virtual

Enum the dimensions and the coordinates represented by this object.

Parameters
fA functor which is called for each item, passing in the dimension and the coordinate. If the functor returns false, the enumeration is ended.

Implemented in imgdoc2::TileCoordinate.

◆ EnumDimensions()

void imgdoc2::ITileCoordinate::EnumDimensions ( const std::function< bool(imgdoc2::Dimension)> &  f) const
inline

Enum the dimensions represented in this object.

Parameters
fA functor which is called for each dimension. If the functor returns false, the enumeration is ended.

◆ GetDimensions()

std::vector< imgdoc2::Dimension > imgdoc2::ITileCoordinate::GetDimensions ( ) const
inline

Gets a vector with the dimensions contained in this object.

Returns
The dimensions.

◆ IsValidDimension()

static bool imgdoc2::ITileCoordinate::IsValidDimension ( imgdoc2::Dimension  dimension)
inlinestatic

Queries if the specified value is a legal dimension. Legal dimensions are a-z and A-Z.

Parameters
dimensionThe dimension.
Returns
True if the dimension is valid, false if not.

◆ operator!=()

bool imgdoc2::ITileCoordinate::operator!= ( const ITileCoordinate other) const
inline

Inequality operator.

Parameters
otherThe other object to compare to.
Returns
True if unequal, false if not.

◆ operator==()

bool imgdoc2::ITileCoordinate::operator== ( const ITileCoordinate other) const
inline

Equality operator.

Parameters
otherThe other object to compare to.
Returns
True if equal, false if not.

◆ TryGetCoordinate()

virtual bool imgdoc2::ITileCoordinate::TryGetCoordinate ( imgdoc2::Dimension  dim,
int *  coordVal 
) const
pure virtual

Attempts to get the value for the specified dimensions.

Parameters
dimThe dimension to query.
[in,out]coordValIf non-null and the call is successful, the coordinate value is put here.
Returns
True if it succeeds, false if it fails.

Implemented in imgdoc2::TileCoordinate.


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