#include <HxImgFtorRuleBase.h>
Public Types | |
| typedef HxIfRbPair | QueryResultType |
| The type of the result of a query. More... | |
Public Methods | |
| void | setResultType (HxString resultType, HxString ftorClass, HxString srcType, HxString opName) |
| Insert ftorClass<srcType,opName>=resultType under [/imagefunctor/rulebase/resulttype]. More... | |
| void | setResultType (HxString resultType, HxString ftorClass, HxString src1Type, HxString src2Type, HxString opName) |
| Insert ftorClass<src1Type,src2Type,opName>=resultType under [/imagefunctor/rulebase/resulttype]. More... | |
| QueryResultType | getResultType (HxImageSignature defaultResult, HxString ftorClass, HxString srcType, HxString opName) |
| Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/resulttype]. More... | |
| QueryResultType | getResultType (HxImageSignature defaultResult, HxString ftorClass, HxString src1Type, HxString src2Type, HxString opName) |
| Get value for ftorClass<src1Type,src2Type,opName> from [/imagefunctor/rulebase/resulttype]. More... | |
| void | setArgumentType (HxString argumentType, HxString ftorClass, HxString srcType, HxString opName) |
| Insert ftorClass<srcType,opName>=argumentType under [/imagefunctor/rulebase/argumenttype]. More... | |
| QueryResultType | getArgumentType (HxImageSignature defaultArgument, HxString ftorClass, HxString srcType, HxString opName) |
| Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/argumenttype]. More... | |
| void | setKernelType (HxString kernelType, HxString ftorClass, HxString srcType, HxString opName) |
| Insert ftorClass<srcType,opName>=kernelType under [/imagefunctor/rulebase/kerneltype]. More... | |
| QueryResultType | getKernelType (HxImageSignature defaultKernel, HxString ftorClass, HxString srcType, HxString opName) |
| Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/kerneltype]. More... | |
| void | setExtraType (HxString extraType, HxString ftorClass, HxString srcType, HxString opName) |
| Insert ftorClass<srcType,opName>=extraType under [/imagefunctor/rulebase/extratype]. More... | |
| QueryResultType | getExtraType (HxImageSignature defaultExtra, HxString ftorClass, HxString srcType, HxString opName) |
| Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/extratype]. More... | |
| void | setExtra2Type (HxString extra2Type, HxString ftorClass, HxString srcType, HxString opName) |
| Insert ftorClass<srcType,opName>=extra2Type under [/imagefunctor/rulebase/extra2type]. More... | |
| QueryResultType | getExtra2Type (HxImageSignature defaultExtra2, HxString ftorClass, HxString srcType, HxString opName) |
| Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/extra2type]. More... | |
| void | setIsModifying (HxString ftorClass, HxString opName, bool f=true) |
| Insert ftorClass<opName>=f under [/imagefunctor/rulebase/isModifying]. More... | |
| bool | getIsModifying (HxString ftorClass, HxString opName) |
| Get value for ftorClass<opName> from [/imagefunctor/rulebase/isModifying]. More... | |
| ~HxImgFtorRuleBase () | |
| Destructor. More... | |
Static Public Methods | |
| HxImgFtorRuleBase & | instance () |
| Access to this singleton class. More... | |
Rules are stored in the registry under key ["/imagefunctor/rulebase"]. Current list:
|
|
The type of the result of a query.
|
|
|
Destructor.
00024 {
00025 }
|
|
|
Access to this singleton class.
00029 {
00030 static HxImgFtorRuleBase theRuleBase;
00031 return theRuleBase;
00032 }
|
|
||||||||||||||||||||
|
Insert ftorClass<srcType,opName>=resultType under [/imagefunctor/rulebase/resulttype].
00080 {
00081 HxStringList argList;
00082 argList << srcType << opName;
00083 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00084 setRule("resulttype", key, resultType);
00085 }
|
|
||||||||||||||||||||||||
|
Insert ftorClass<src1Type,src2Type,opName>=resultType under [/imagefunctor/rulebase/resulttype].
00091 {
00092 HxStringList argList;
00093 argList << src1Type << src2Type << opName;
00094 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00095 setRule("resulttype", key, resultType);
00096 }
|
|
||||||||||||||||||||
|
Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/resulttype]. Return defaultResult if not found.
00102 {
00103 HxStringList argList;
00104 argList << srcType << opName;
00105 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00106
00107 HxString result = getRule("resulttype", key);
00108 if (result != HxString(""))
00109 return HxImageSignature::NameToSignature(result);
00110 else
00111 return HxIfRbPair(defaultResult, false);
00112 }
|
|
||||||||||||||||||||||||
|
Get value for ftorClass<src1Type,src2Type,opName> from [/imagefunctor/rulebase/resulttype]. Return defaultResult if not found.
00118 {
00119 HxStringList argList;
00120 argList << src1Type << src2Type << opName;
00121 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00122
00123 HxString result = getRule("resulttype", key);
00124 if (result != HxString(""))
00125 return HxImageSignature::NameToSignature(result);
00126 else
00127 return HxIfRbPair(defaultResult, false);
00128 }
|
|
||||||||||||||||||||
|
Insert ftorClass<srcType,opName>=argumentType under [/imagefunctor/rulebase/argumenttype].
00134 {
00135 HxStringList argList;
00136 argList << srcType << opName;
00137 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00138 setRule("argumenttype", key, argumentType);
00139 }
|
|
||||||||||||||||||||
|
Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/argumenttype]. Return defaultResult if not found.
00145 {
00146 HxStringList argList;
00147 argList << srcType << opName;
00148 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00149
00150 HxString argument = getRule("argumenttype", key);
00151 if (argument != HxString(""))
00152 return HxImageSignature::NameToSignature(argument);
00153 else
00154 return HxIfRbPair(defaultArgument, false);
00155 }
|
|
||||||||||||||||||||
|
Insert ftorClass<srcType,opName>=kernelType under [/imagefunctor/rulebase/kerneltype].
00161 {
00162 HxStringList argList;
00163 argList << srcType << opName;
00164 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00165 setRule("kerneltype", key, kernelType);
00166 }
|
|
||||||||||||||||||||
|
Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/kerneltype]. Return defaultResult if not found.
00172 {
00173 HxStringList argList;
00174 argList << srcType << opName;
00175 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00176
00177 HxString result = getRule("kerneltype", key);
00178 if (result != HxString(""))
00179 return HxImageSignature::NameToSignature(result);
00180 else
00181 return HxIfRbPair(defaultKernel, false);
00182 }
|
|
||||||||||||||||||||
|
Insert ftorClass<srcType,opName>=extraType under [/imagefunctor/rulebase/extratype].
00188 {
00189 HxStringList argList;
00190 argList << srcType << opName;
00191 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00192 setRule("extratype", key, extraType);
00193 }
|
|
||||||||||||||||||||
|
Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/extratype]. Return defaultResult if not found.
00199 {
00200 HxStringList argList;
00201 argList << srcType << opName;
00202 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00203
00204 HxString result = getRule("extratype", key);
00205 if (result != HxString(""))
00206 return HxImageSignature::NameToSignature(result);
00207 else
00208 return HxIfRbPair(defaultExtra, false);
00209 }
|
|
||||||||||||||||||||
|
Insert ftorClass<srcType,opName>=extra2Type under [/imagefunctor/rulebase/extra2type].
00215 {
00216 HxStringList argList;
00217 argList << srcType << opName;
00218 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00219 setRule("extra2type", key, extra2Type);
00220 }
|
|
||||||||||||||||||||
|
Get value for ftorClass<srcType,opName> from [/imagefunctor/rulebase/extra2type]. Return defaultResult if not found.
00226 {
00227 HxStringList argList;
00228 argList << srcType << opName;
00229 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00230
00231 HxString result = getRule("extra2type", key);
00232 if (result != HxString(""))
00233 return HxImageSignature::NameToSignature(result);
00234 else
00235 return HxIfRbPair(defaultExtra2, false);
00236 }
|
|
||||||||||||||||
|
Insert ftorClass<opName>=f under [/imagefunctor/rulebase/isModifying].
00241 {
00242 HxStringList argList;
00243 argList << opName;
00244 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00245 setFlagRule("isModifying", key, f);
00246 }
|
|
||||||||||||
|
Get value for ftorClass<opName> from [/imagefunctor/rulebase/isModifying].
00251 {
00252 HxStringList argList;
00253 argList << opName;
00254 HxImgFtorKey key(ftorClass, argList.begin(), argList.end());
00255 return getFlagRule("isModifying", key);
00256 }
|
1.2.12 written by Dimitri van Heesch,
© 1997-2001