12 #ifndef DtRegionMatchList_H_
13 #define DtRegionMatchList_H_
18 #include <vlutil/vlHashlist.h>
19 #include <vlutil/vlHashKeys.h>
22 class DtRegionMatches;
29 class DT_DLL_LRC DtRegionMatchList :
public MAKRti::DtHashList
35 DtRegionMatchList(
bool regionMatchElementsAreOwned);
38 DtRegionMatchList(
const DtRegionMatchList& orig);
43 virtual ~DtRegionMatchList();
46 virtual MAKRti::DtListItem* add(
DtHandle regionSetHandle,
47 DtRegionMatches* data, DtRegionMatches** oldData =
NULL);
50 virtual DtRegionMatches*
remove(
DtHandle regionSetHandle);
53 virtual DtRegionMatches* lookup(
DtHandle regionSetHandle)
const;
54 virtual DtRegionMatches* operator[] (
DtHandle regionSetHandle)
const;
57 virtual void addMatch(DtRegionSet& localRegionSet,
58 DtRegionSet& remoteRegionSet);
61 virtual void removeMatch(DtRegionSet& localRegionSet,
62 DtRegionSet& remoteRegionSet);
67 virtual void destroy(
DtHandle regionSetHandle);
72 virtual void destroyAll();
75 bool myRegionSetsOwned;
87 class DT_DLL_LRC DtRegionMatchListByClass :
public MAKRti::DtHashList
93 DtRegionMatchListByClass(
bool regionMatchElementsAreOwned);
96 DtRegionMatchListByClass(
const DtRegionMatchListByClass& orig);
101 virtual ~DtRegionMatchListByClass();
104 virtual MAKRti::DtListItem* add(
DtHandle classHandle,
105 DtRegionMatchList* data, DtRegionMatchList** oldData =
NULL);
108 virtual void add(
DtHandle classHandle, DtRegionMatches* regionSetMatch);
111 virtual void addMatch(
DtHandle classHandle, DtRegionSet& localRegionSet,
112 DtRegionSet& remoteRegionSet);
115 virtual DtRegionMatchList*
remove(
DtHandle classHandle);
120 virtual DtRegionMatches*
remove(
DtHandle classHandle,
126 virtual void removeMatch(
DtHandle classHandle, DtRegionSet& localRegionSet,
127 DtRegionSet& remoteRegionSet);
130 virtual DtRegionMatchList* lookup(
DtHandle classHandle);
134 virtual DtRegionMatchList& operator[] (
DtHandle classHandle);
137 virtual void destroy(
DtHandle classHandle);
141 virtual void destroyAll();
144 bool myRegionSetsOwned;