diff options
author | Henning Brinkmann <hbrinkm@openoffice.org> | 2006-10-24 08:27:54 +0000 |
---|---|---|
committer | Henning Brinkmann <hbrinkm@openoffice.org> | 2006-10-24 08:27:54 +0000 |
commit | 5398d00863db3303cb4f3683ea1af98ff9d46a2a (patch) | |
tree | 90c4fa0aacc5cffb7fa4b5d23167b4c8184194b3 /writerfilter/inc/rtftok | |
parent | ee309d277e83fdd10d93cadbf65bbc460efe67c3 (diff) |
initial check in
Diffstat (limited to 'writerfilter/inc/rtftok')
-rw-r--r-- | writerfilter/inc/rtftok/RTFInputSource.hxx | 19 | ||||
-rw-r--r-- | writerfilter/inc/rtftok/RTFParseException.hxx | 19 | ||||
-rw-r--r-- | writerfilter/inc/rtftok/RTFScanner.hxx | 42 | ||||
-rw-r--r-- | writerfilter/inc/rtftok/RTFScannerHandler.hxx | 27 |
4 files changed, 107 insertions, 0 deletions
diff --git a/writerfilter/inc/rtftok/RTFInputSource.hxx b/writerfilter/inc/rtftok/RTFInputSource.hxx new file mode 100644 index 000000000000..54cf7c84d068 --- /dev/null +++ b/writerfilter/inc/rtftok/RTFInputSource.hxx @@ -0,0 +1,19 @@ +/** + Copyright 2005 Sun Microsystems, Inc. +*/ + +#ifndef INCLUDED_RTFINPUTSOURCE_HXX +#define INCLUDED_RTFINPUTSOURCE_HXX + +namespace writerfilter { namespace rtftok { + +class RTFInputSource +{ +public: + virtual int read(void *buffer, int maxLen) = 0; +}; + +} } /* end namespace writerfilter::rtftok */ + + +#endif /* INCLUDED_RTFINPUTSOURCE_HXX */ diff --git a/writerfilter/inc/rtftok/RTFParseException.hxx b/writerfilter/inc/rtftok/RTFParseException.hxx new file mode 100644 index 000000000000..df5fef6c06fa --- /dev/null +++ b/writerfilter/inc/rtftok/RTFParseException.hxx @@ -0,0 +1,19 @@ +/** + Copyright 2005 Sun Microsystems, Inc. +*/ + +#ifndef INCLUDED_RTFPARSEEXCEPTION_HXX +#define INCLUDED_RTFPARSEEXCEPTION_HXX + +namespace writerfilter { namespace rtftok { + +class RTFParseException +{ +public: + RTFParseException(char *message); +}; + +} } /* end namespace writerfilter::rtftok */ + + +#endif /* INCLUDED_RTFPARSEEXCEPTION_HXX */ diff --git a/writerfilter/inc/rtftok/RTFScanner.hxx b/writerfilter/inc/rtftok/RTFScanner.hxx new file mode 100644 index 000000000000..7610aca41853 --- /dev/null +++ b/writerfilter/inc/rtftok/RTFScanner.hxx @@ -0,0 +1,42 @@ +/** + Copyright 2005 Sun Microsystems, Inc. +*/ + +#ifndef INCLUDED_RTFSCANNER_HXX +#define INCLUDED_RTFSCANNER_HXX + +#include <WriterFilterDllApi.hxx> +#include <vector> +#include <rtftok/RTFInputSource.hxx> +#include <rtftok/RTFScannerHandler.hxx> + +namespace writerfilter { namespace rtftok { + +class WRITERFILTER_DLLPUBLIC RTFScanner { +public: + RTFScanner(RTFScannerHandler &eventHandler_) : eventHandler(eventHandler_) {}; + virtual ~RTFScanner() { } + + const char* YYText() { return yytext; } + int YYLeng() { return yyleng; } + + virtual int yylex() = 0; + + int lineno() const { return yylineno; } + +protected: + char* yytext; + int yyleng; + int yylineno; // only maintained if you use %option yylineno + int yy_flex_debug; // only has effect with -d or "%option debug" + RTFScannerHandler &eventHandler; + + +public: + static writerfilter::rtftok::RTFScanner* createRTFScanner(writerfilter::rtftok::RTFInputSource& inputSource, writerfilter::rtftok::RTFScannerHandler &eventHandler); +}; + +} } /* end namespace writerfilter::rtftok */ + + +#endif /* INCLUDED_RTFSCANNER_HXX */ diff --git a/writerfilter/inc/rtftok/RTFScannerHandler.hxx b/writerfilter/inc/rtftok/RTFScannerHandler.hxx new file mode 100644 index 000000000000..c27a7bf1c3a0 --- /dev/null +++ b/writerfilter/inc/rtftok/RTFScannerHandler.hxx @@ -0,0 +1,27 @@ +/** + Copyright 2005 Sun Microsystems, Inc. + */ + +#ifndef INCLUDED_RTFSCANNERHANDLER_HXX +#define INCLUDED_RTFSCANNERHANDLER_HXX + +namespace writerfilter { namespace rtftok { + +class RTFScannerHandler +{ +public: + virtual void dest(char*token, char*value)=0; + virtual void ctrl(char*token, char*value)=0; + virtual void lbrace(void)=0; + virtual void rbrace(void)=0; + virtual void addSpaces(int count)=0; + virtual void addBinData(unsigned char data)=0; + virtual void addChar(char ch) =0; + virtual void addCharU(sal_Unicode ch) =0; + virtual void addHexChar(char* hexch) =0; + +}; + +} } /* end namespace writerfilter::rtftok */ + +#endif /* INCLUDED_RTFSCANNERHANDLER_HXX */ |