49 lines
1.1 KiB
C++
49 lines
1.1 KiB
C++
// te-fill.h: template for the generic CTE_Fill class
|
|
|
|
// To add a new texture effect:
|
|
// (1) globally replace Fill with the effect name,
|
|
// (2) add effect-specific data members and access methods (if required),
|
|
// (3) implement the copy constructor,
|
|
// (4) implement Dump(),
|
|
// (5) implement Apply(),
|
|
// (6) add effect-specific operations (if required).
|
|
|
|
#ifndef TE_Fill_DEFINED
|
|
#define TE_Fill_DEFINED
|
|
|
|
#include <te-texture.h>
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
class CTE_Fill : public CTE_Texture
|
|
{
|
|
// Interface:
|
|
public:
|
|
CTE_Fill();
|
|
CTE_Fill(CTE_Fill const& te);
|
|
CTE_Fill(CString const& name);
|
|
virtual ~CTE_Fill();
|
|
|
|
// Data access methods
|
|
void SetRGBA(BYTE const rgba[4]);
|
|
void SetRGBA(BYTE r, BYTE g, BYTE b, BYTE a);
|
|
void GetRGBA(BYTE rgba[4]) const;
|
|
|
|
// Operations
|
|
virtual void CreateParameters(void);
|
|
virtual void Dump(void) const;
|
|
void Generate
|
|
(
|
|
CTE_Outline const& outline, // copy may be passed on
|
|
CTE_Placement const& pl,
|
|
CTE_Image& result
|
|
);
|
|
|
|
// Private data members:
|
|
private:
|
|
BYTE m_RGBA[4];
|
|
|
|
};
|
|
|
|
#endif
|