Here is the interface for TShapeNotification. The implementation is not presented because it is standard.
class TShapeNotification : public TNotification {
public:
MCollectibleDeclarationsMacro(TShapeNotification);
TShapeNotification(const TInterest&, const MGraphic&);
TShapeNotification(const TShapeNotification&);
virtual ~TShapeNotification();
const TShapeNotification& operator =(const TShapeNotification&);
const MGraphic* GetShape() const;
virtual TStream& operator >>=(TStream&) const;
virtual TStream& operator <<=(TStream&);
virtual Boolean IsEqual(const MCollectible*) const;
protected:
TShapeNotification();
private:
MGraphic* fShape;
enum { kOriginalVersion };
};