diff options
Diffstat (limited to 'unoidl/source/unoidlprovider.hxx')
-rw-r--r-- | unoidl/source/unoidlprovider.hxx | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/unoidl/source/unoidlprovider.hxx b/unoidl/source/unoidlprovider.hxx index 2f0728af8cd6..9eacfb5f17dd 100644 --- a/unoidl/source/unoidlprovider.hxx +++ b/unoidl/source/unoidlprovider.hxx @@ -12,6 +12,8 @@ #include "sal/config.h" +#include <set> + #include "rtl/ref.hxx" #include "sal/types.h" #include "unoidl/unoidl.hxx" @@ -21,6 +23,16 @@ namespace unoidl { namespace detail { class MappedFile; struct MapEntry; +struct Map { + MapEntry const * begin; + sal_uInt32 size; +}; + +struct NestedMap { + Map map; + std::set<Map> trace; +}; + class UnoidlProvider: public Provider { public: // throws FileFormatException, NoSuchFileException: @@ -37,8 +49,7 @@ private: virtual ~UnoidlProvider() throw (); rtl::Reference< detail::MappedFile > file_; - detail::MapEntry const * mapBegin_; - sal_uInt32 mapSize_; + NestedMap map_; }; } } |