2 @Copyright Looking Glass Studios, Inc.
3 1996,1997,1998,1999,2000 Unpublished Work.
6 // $Header: r:/t2repos/thief2/src/object/propnull.h,v 1.9 2000/01/29 13:24:42 adurant Exp $
13 ////////////////////////////////////////////////////////////
16 // This is the IProperty implementation for PROPID_NULL.
17 // it essentially does nothing. The Property manager
18 // returns it for all undefined properties.
21 class cNullProperty
: public IProperty
24 DECLARE_UNAGGREGATABLE();
27 STDMETHOD_(const sPropertyDesc
*, Describe
) () const;
28 STDMETHOD_(PropertyID
,GetID
)() const;
29 STDMETHOD_(const sPropertyTypeDesc
*, DescribeType
) () const;
30 STDMETHOD(Create
) (ObjID obj
);
31 STDMETHOD(Copy
) (ObjID obj
,ObjID example
);
32 STDMETHOD(Delete
) (ObjID obj
);
33 STDMETHOD_(void,Notify
) (ePropertyNotifyMsg msg
, PropNotifyData data
);
34 STDMETHOD_(BOOL
,IsRelevant
)(ObjID obj
) const;
35 STDMETHOD_(BOOL
,IsSimplyRelevant
)(ObjID obj
) const;
36 STDMETHOD_(BOOL
,Touch
) (ObjID obj
);
37 STDMETHOD_(PropListenerHandle
, Listen
)(PropertyListenMsgSet interests
, PropertyListenFunc func
, PropListenerData data
);
38 STDMETHOD(Unlisten
)(PropListenerHandle
) { return S_OK
; };
40 STDMETHOD_(void, IterStart
) (sPropertyObjIter
* iter
) const;
41 STDMETHOD_(BOOL
, IterNext
) (sPropertyObjIter
* iter
, ObjID
* next
) const;
42 STDMETHOD_(void, IterStop
) (sPropertyObjIter
* iter
) const;