Original Post
Hey everyone, I ran into a design issue, and am looking for solutions. Lets say, I have four classes: SysVideo.h
class cSysPalette
{
// stuff..
}
class cSysSurface
{
bool SetPalette (cSysPalette& ); // uses cSysPalette
}
// Video.h (interface classes)
class cPalette // wraps up cSysPalette
{
// stuff..
}
class cSurface // wraps up cSysSurface
{
cSysSurface* lpSysSurface;
//...
// My problem...
bool SetPalette (cPalette& palette)
{
lpSysSurface->SetPalette (/* takes cSysPalette not a cPalette!! */);
}
}
How should I implement cSurface::SetPalette ()? This function calls lpSysPalette->SetPalette, which takes a cSysPalette not a cPalette--which is my problem. How should I convert the cPalette to a cSysPalette? Im trying to keep clean, nice interfaces, but this has got me stumped! Please help! Thanks in advance!