Files
Work/common/RESBMP.HPP
2024-08-07 09:09:36 -04:00

78 lines
1.4 KiB
C++

#ifndef _COMMON_RESBITMAP_HPP_
#define _COMMON_RESBITMAP_HPP_
#ifndef _COMMON_RESDATA_HPP_
#include <common/resdata.hpp>
#endif
#ifndef _COMMON_BITMAPINFO_HPP_
#include <common/bminfo.hpp>
#endif
#ifndef _COMMON_PUREPALETTE_HPP_
#include <common/purepal.hpp>
#endif
class ResBitmap : public BitmapInfo, public PurePalette, public ResData<unsigned char>
{
public:
ResBitmap(void);
ResBitmap(const String &strBitmapName);
ResBitmap(const String &strBitmapName,HMODULE hResModule);
virtual ~ResBitmap();
const String &strBitmapName(void)const;
unsigned char *ptrData(void);
BitmapInfo &getBitmapInfo(void);
PurePalette &getPalette(void);
private:
ResBitmap(const ResBitmap &someResBitmap);
ResBitmap &operator=(const ResBitmap &someResBitmap);
String mStrBitmapName;
unsigned char *mpBitmapData;
};
inline
ResBitmap::ResBitmap(void)
: mpBitmapData(0)
{
}
inline
ResBitmap::ResBitmap(const ResBitmap &/*someResBitmap*/)
: mpBitmapData(0)
{ // private implementation
}
inline
ResBitmap::~ResBitmap()
{
}
inline
ResBitmap &ResBitmap::operator=(const ResBitmap &/*someResBitmap*/)
{ // private implementation
return *this;
}
inline
const String &ResBitmap::strBitmapName(void)const
{
return mStrBitmapName;
}
inline
unsigned char *ResBitmap::ptrData(void)
{
return mpBitmapData;
}
inline
BitmapInfo &ResBitmap::getBitmapInfo(void)
{
return (BitmapInfo&)*this;
}
inline
PurePalette &ResBitmap::getPalette(void)
{
return (PurePalette&)*this;
}
#endif