21 #ifndef OST_DB_LINEAR_BINARY_CONTAINER_HH
22 #define OST_DB_LINEAR_BINARY_CONTAINER_HH
25 #include <boost/shared_ptr.hpp>
32 namespace ost {
namespace db {
49 void Save(
const std::string& filename)
const;
53 void ClearRange(std::pair<uint64_t, uint64_t> range);
62 return data_ == other.data_;
67 return !(*
this == other);
89 void Save(
const std::string& filename)
const;
93 void ClearRange(std::pair<uint64_t, uint64_t> range);
103 return data_ == other.data_;
108 return !(*
this == other);
114 static const uint64_t X_POS_MASK = 9223367638808264704;
115 static const int X_POS_SHIFT = 42;
118 static const uint64_t Y_POS_MASK = 4398044413952;
119 static const int Y_POS_SHIFT = 21;
122 static const uint64_t Z_POS_MASK = 2097151;
123 static const int Z_POS_SHIFT = 0;
126 static const int CUSTOM_INT_MIN = -1048576;
127 static const int CUSTOM_INT_MAX = 1048576;
void Save(const std::string &filename) const
LinearCharacterContainer()
char GetCharacter(uint64_t idx) const
uint64_t GetNumElements() const
void GetPositions(std::pair< uint64_t, uint64_t > range, geom::Vec3List &positions) const
bool operator!=(const LinearPositionContainer &other) const
static LinearPositionContainerPtr Load(const std::string &filename)
bool operator==(const LinearCharacterContainer &other) const
void GetPosition(uint64_t idx, geom::Vec3 &pos) const
unsigned __int64 uint64_t
bool operator!=(const LinearCharacterContainer &other) const
void ClearRange(std::pair< uint64_t, uint64_t > range)
void AddPositions(const geom::Vec3List &positions)
uint64_t GetNumElements() const
void AddCharacters(const std::string &characters)
static LinearCharacterContainerPtr Load(const std::string &filename)
void GetCharacters(std::pair< uint64_t, uint64_t > range, String &s) const
boost::shared_ptr< LinearPositionContainer > LinearPositionContainerPtr
boost::shared_ptr< LinearCharacterContainer > LinearCharacterContainerPtr
Three dimensional vector class, using Real precision.
bool operator==(const LinearPositionContainer &other) const
void ClearRange(std::pair< uint64_t, uint64_t > range)
void Save(const std::string &filename) const
LinearPositionContainer()