Files
Work/Histogram/ClrRect.hpp
2024-08-07 09:16:27 -04:00

80 lines
1.6 KiB
C++

#ifndef _HISTOGRAM_COLORRECT_HPP_
#define _HISTOGRAM_COLORRECT_HPP_
#ifndef _ENGINE_RECT3D_HPP_
#include <engine/rect3d.hpp>
#endif
class ColorRect : public Rect3D
{
public:
ColorRect(void);
ColorRect(const ColorRect &someColorRect);
ColorRect(const Rect3D &someRect3D,BYTE paletteIndex);
ColorRect(const ColorRect &someColorRect,BYTE paletteIndex);
virtual~ColorRect();
ColorRect &operator=(const ColorRect &someColorRect);
WORD operator==(const ColorRect &someColorRect);
BYTE paletteIndex(void)const;
void paletteIndex(BYTE paletteIndex);
private:
BYTE mPaletteIndex;
};
inline
ColorRect::ColorRect(void)
: mPaletteIndex(0)
{
}
inline
ColorRect::ColorRect(const ColorRect &someColorRect)
{
*this=someColorRect;
}
inline
ColorRect::ColorRect(const ColorRect &someColorRect,BYTE paletteIndex)
: Rect3D((Rect3D&)someColorRect), mPaletteIndex(paletteIndex)
{
}
inline
ColorRect::ColorRect(const Rect3D &someRect3D,BYTE paletteIndex)
: mPaletteIndex(paletteIndex)
{
(Rect3D&)*this=(Rect3D&)someRect3D;
}
inline
ColorRect::~ColorRect()
{
}
inline
ColorRect &ColorRect::operator=(const ColorRect &someColorRect)
{
(Rect3D&)*this=(Rect3D&)someColorRect;
paletteIndex(someColorRect.paletteIndex());
return *this;
}
inline
WORD ColorRect::operator==(const ColorRect &someColorRect)
{
return ((Rect3D&)*this==(Rect3D&)someColorRect&&
paletteIndex()==someColorRect.paletteIndex());
}
inline
BYTE ColorRect::paletteIndex(void)const
{
return mPaletteIndex;
}
inline
void ColorRect::paletteIndex(BYTE paletteIndex)
{
mPaletteIndex=paletteIndex;
}
#endif