diff options
author | vng <viktor.govako@gmail.com> | 2011-08-25 08:47:17 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 01:22:21 +0300 |
commit | 23894576db1c9c13ba55d9173488202a050a0d3a (patch) | |
tree | e8c7f3572c476271e431b6b7166595bf83565880 /indexer/feature_loader.hpp | |
parent | b9df96e89b57666178aada45c4c25eece8f8d756 (diff) |
[Refactoring] Factor out feature loading routine to separate instance.
Diffstat (limited to 'indexer/feature_loader.hpp')
-rw-r--r-- | indexer/feature_loader.hpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/indexer/feature_loader.hpp b/indexer/feature_loader.hpp new file mode 100644 index 0000000000..5d0df0092a --- /dev/null +++ b/indexer/feature_loader.hpp @@ -0,0 +1,34 @@ +#pragma once +#include "feature_loader_base.hpp" + + +namespace feature +{ + class LoaderCurrent : public LoaderBase + { + typedef LoaderBase BaseT; + + void ReadOffsets(ArrayByteSource & src, uint8_t mask, offsets_t & offsets) const; + + /// Get the index for geometry serialization. + /// @param[in] scale: + /// -1 : index for the best geometry + /// -2 : index for the worst geometry + /// default : needed geometry + //@{ + int GetScaleIndex(int scale) const; + int GetScaleIndex(int scale, offsets_t const & offsets) const; + //@} + + public: + LoaderCurrent(SharedLoadInfo const & info) : BaseT(info) {} + + virtual uint8_t GetHeader(); + + virtual void ParseTypes(); + virtual void ParseCommon(); + virtual void ParseHeader2(); + virtual uint32_t ParseGeometry(int scale); + virtual uint32_t ParseTriangles(int scale); + }; +} |