convert line ends
[canaan.git] / prj / cam / src / object / relnull.h
blob0dcf2203e25514e987850ac1c4b8d6383d58335c
1 /*
2 @Copyright Looking Glass Studios, Inc.
3 1996,1997,1998,1999,2000 Unpublished Work.
4 */
6 // $Header: r:/t2repos/thief2/src/object/relnull.h,v 1.4 2000/01/29 13:24:55 adurant Exp $
7 #pragma once
9 #ifndef __RELNULL_H
10 #define __RELNULL_H
11 #include <relation.h>
13 /////////////////////////////////////////////////////////////
14 // THE NULL RELATION
16 // Contains no links.
19 class cNullRelation : public IRelation
21 public:
22 DECLARE_UNAGGREGATABLE();
24 STDMETHOD_(const sRelationDesc*, Describe)() const;
25 STDMETHOD_(RelationID,GetID)() const;
26 STDMETHOD(SetID)(RelationID ) ;
28 STDMETHOD_(const sRelationDataDesc*, DescribeData)() const;
29 STDMETHOD_(IRelation*, Inverse)();
30 STDMETHOD_(LinkID, Add)(ObjID source, ObjID dest);
31 STDMETHOD_(LinkID, AddFull)(ObjID source, ObjID desc, void* data);
32 STDMETHOD(Remove)(LinkID id);
33 STDMETHOD_(BOOL,Get)(LinkID id, sLink* out) const;
34 STDMETHOD(SetData)(LinkID id, void* data);
35 STDMETHOD_(void*,GetData)(LinkID id);
36 STDMETHOD_(ILinkQuery*,Query)(ObjID source, ObjID dest) const;
37 STDMETHOD(Notify)(eRelationNotifyMsg msg, RelationNotifyData data);
38 STDMETHOD(Listen)(RelationListenMsgSet interests, RelationListenFunc func, RelationListenerData data);
39 STDMETHOD_(LinkID, GetSingleLink)(ObjID source, ObjID dest);
40 STDMETHOD_(BOOL, AnyLinks)(ObjID source, ObjID dest);
44 #endif // __RELNULL_H