diff options
Diffstat (limited to 'Src/xml/ifc_xmlreadercallbackT.h')
-rw-r--r-- | Src/xml/ifc_xmlreadercallbackT.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Src/xml/ifc_xmlreadercallbackT.h b/Src/xml/ifc_xmlreadercallbackT.h new file mode 100644 index 00000000..82faf4ac --- /dev/null +++ b/Src/xml/ifc_xmlreadercallbackT.h @@ -0,0 +1,27 @@ +#pragma once +#include "ifc_xmlreadercallback.h" + +template <class T> +class ifc_xmlreadercallbackT : public ifc_xmlreadercallback +{ +protected: + ifc_xmlreadercallbackT() {} + ~ifc_xmlreadercallbackT() {} + +public: + virtual void xmlReaderOnStartElementCallback(const wchar_t *xmlpath, const wchar_t *xmltag, ifc_xmlreaderparams *params){} + virtual void xmlReaderOnEndElementCallback(const wchar_t *xmlpath, const wchar_t *xmltag){} + virtual void xmlReaderOnCharacterDataCallback(const wchar_t *xmlpath, const wchar_t *xmltag, const wchar_t *str){} + virtual void xmlReaderOnError( int linenum, int errcode, const wchar_t *errstr) {} + +#define CBCLASS T +#define CBCLASST ifc_xmlreadercallbackT<T> + START_DISPATCH_INLINE; + VCBT(ONSTARTELEMENT, xmlReaderOnStartElementCallback); + VCBT(ONENDELEMENT, xmlReaderOnEndElementCallback); + VCBT(ONCHARDATA, xmlReaderOnCharacterDataCallback); + VCBT(ONERROR, xmlReaderOnError); + END_DISPATCH; +#undef CBCLASS +#undef CBCLASST +}; |