* Use this for integer dimensions and points with limited range such as image
* sizes and pixel coordinates where a pair of floating point numbers is
* inefficient and illogical (i.e. the data is inherently integer).
- * These are immutable. If you want to change a value, make a whole new object.
* One of these can be passed in a single 32 bit integer register on
* common architectures.
+ * @SINCE_1_0.0
*/
class Uint16Pair
{
public:
/**
- * @brief Default constructor for the (0, 0) vector.
+ * @brief Default constructor for the (0, 0) tuple.
+ * @SINCE_1_0.0
*/
Uint16Pair() : mData(0) {}
/**
* @brief Constructor taking separate x and y (width and height) parameters.
- * @param[in] width The width or X dimension of the vector. Make sure it is less than 65536,
- * @param[in] height The height or Y dimension of the vector. Make sure it is less than 65536,
+ * @SINCE_1_0.0
+ * @param[in] width The width or X dimension of the tuple. Make sure it is less than 65536,
+ * @param[in] height The height or Y dimension of the tuple. Make sure it is less than 65536,
*/
Uint16Pair( uint32_t width, uint32_t height )
{
/**
* @brief Copy constructor.
- * @param rhs to copy from
+ * @SINCE_1_0.0
+ * @param[in] rhs A reference to assign
*/
Uint16Pair( const Uint16Pair& rhs )
{
}
/**
- * @brief Sets the width
- * @param width to set
+ * @brief Sets the width.
+ * @SINCE_1_1.13
+ * @param[in] width The x dimension to be stored in this 2-tuple.
*/
void SetWidth( uint16_t width )
{
}
/**
- * @returns the x dimension stored in this 2-tuple.
+ * @brief Get the width.
+ * @SINCE_1_0.0
+ * @return the x dimension stored in this 2-tuple
*/
uint16_t GetWidth() const
{
}
/**
- * @brief Sets the height
- * @param height to set
+ * @brief Sets the height.
+ * @SINCE_1_1.13
+ * @param[in] height The y dimension to be stored in this 2-tuple.
*/
void SetHeight( uint16_t height )
{
mComponents[1] = height;
}
+
/**
- * @returns the y dimension stored in this 2-tuple.
+ * @brief Returns the y dimension stored in this 2-tuple.
+ * @SINCE_1_0.0
+ * @return Height
*/
uint16_t GetHeight() const
{
}
/**
- * @returns the x dimension stored in this 2-tuple.
+ * @brief Sets the x dimension (same as width).
+ * @SINCE_1_1.14
+ * @param[in] x The x dimension to be stored in this 2-tuple.
+ */
+ void SetX( uint16_t x )
+ {
+ mComponents[0] = x;
+ }
+
+ /**
+ * @brief Returns the x dimension stored in this 2-tuple.
+ * @SINCE_1_0.0
+ * @return X
*/
uint16_t GetX() const
{
}
/**
- * @returns the y dimension stored in this 2-tuple.
+ * @brief Sets the y dimension (same as height).
+ * @SINCE_1_1.14
+ * @param[in] y The y dimension to be stored in this 2-tuple.
+ */
+ void SetY( uint16_t y )
+ {
+ mComponents[1] = y;
+ }
+
+ /**
+ * @brief Returns the y dimension stored in this 2-tuple.
+ * @SINCE_1_0.0
+ * @return Y
*/
uint16_t GetY() const
{
}
/**
- * Assignment operator.
+ * @brief Assignment operator.
+ * @SINCE_1_0.0
+ * @param[in] rhs Handle to an object
+ * @return A reference to this
*/
Uint16Pair& operator=( const Uint16Pair& rhs )
{
}
/**
- * Equality operator.
+ * @brief Equality operator.
+ * @SINCE_1_0.0
+ * @param[in] rhs A reference for comparison
+ * @return True if same
*/
bool operator==( const Uint16Pair& rhs ) const
{
}
/**
- * Inequality operator.
+ * @brief Inequality operator.
+ * @SINCE_1_0.0
+ * @param[in] rhs A reference for comparison
+ * @return True if different
*/
bool operator!=( const Uint16Pair& rhs ) const
{
}
/**
- * Less than comparison operator for storing in collections (not geometrically
+ * @brief Less than comparison operator for storing in collections (not geometrically
* meaningful).
+ * @SINCE_1_0.0
+ * @param[in] rhs A reference for comparison
+ * @return True if less
*/
bool operator<( const Uint16Pair& rhs ) const
{
}
/**
- * Greater than comparison operator for storing in collections (not
+ * @brief Greater than comparison operator for storing in collections (not
* geometrically meaningful).
+ * @SINCE_1_0.0
+ * @param[in] rhs A reference for comparison
+ * @return True if greater
*/
bool operator>( const Uint16Pair& rhs ) const
{
*
* Uses a template for loose coupling, to save a header include, and allow any
* vector type with .x and .y members to be converted.
+ * @SINCE_1_0.0
+ * @param[in] from Floating point vector2
+ * @return Closest integer value.
*/
template<typename FLOAT_VECTOR_N_TYPE>
static Uint16Pair FromFloatVec2( const FLOAT_VECTOR_N_TYPE& from )
*
* Uses a template to allow any vector type with operator [] to be converted
* in addition to plain arrays.
+ * @SINCE_1_0.0
+ * @param[in] from Floating point array
+ * @return Closest integer value.
*/
template<typename FLOAT_ARRAY>
static Uint16Pair FromFloatArray( const FLOAT_ARRAY& from )