Class StateStorage
Defined in File StateStorage.h
Nested Relationships
Nested Types
Inheritance Relationships
Derived Type
public ompl::base::StateStorageWithMetadata< M >
(Template Class StateStorageWithMetadata)
Class Documentation
-
class StateStorage
Manage loading and storing for a set of states of a specified state space.
- Deprecated:
This class is deprecated and will be removed in the future. Please use the improved PlannerDataStorage.
Subclassed by ompl::base::StateStorageWithMetadata< M >
Public Functions
-
StateStorage(StateSpacePtr space)
The state space to store states for is specified as argument.
-
virtual ~StateStorage()
-
inline const StateSpacePtr &getStateSpace() const
Get the state space this class maintains states for.
-
void load(const char *filename)
Load a set of states from a specified file.
-
virtual void load(std::istream &in)
Load a set of states from a stream.
-
void store(const char *filename)
Save a set of states to a file.
-
virtual void store(std::ostream &out)
Save a set of states to a stream.
-
virtual void addState(const State *state)
Add a state to the set of states maintained by this storage structure. The state is copied to internal storage.
-
virtual void generateSamples(unsigned int count)
Generate count states uniformly at random and store them in this structure.
-
virtual void clear()
Clear the stored states. This frees all the memory.
-
inline std::size_t size() const
Return the number of stored states.
-
inline bool hasMetadata() const
Return a flag that indicates whether there is metadata associated to the states in this storage.
-
void sort(const std::function<bool(const State*, const State*)> &op)
Sort the states according to the less-equal operator op. Metadata is NOT sorted; if metadata was added, the index values of the metadata will not match after the sort.
-
StateSamplerAllocator getStateSamplerAllocator() const
Get a sampler allocator to a sampler that can be specified for a StateSpace, such that all sampled states are actually from this storage structure.
-
StateSamplerAllocator getStateSamplerAllocatorRangeUntil(std::size_t until) const
Get a sampler allocator to a sampler that can be specified for a StateSpace, such that all sampled states are actually from this storage structure at an index less than or equal to until.
-
StateSamplerAllocator getStateSamplerAllocatorRangeAfter(std::size_t after) const
Get a sampler allocator to a sampler that can be specified for a StateSpace, such that all sampled states are actually from this storage structure at an index above or equal to after.
-
virtual StateSamplerAllocator getStateSamplerAllocatorRange(std::size_t from, std::size_t to) const
Get a sampler allocator to a sampler that can be specified for a StateSpace, such that all sampled states are actually from this storage structure at an index in the range [from, to] (inclusive)
-
virtual void print(std::ostream &out = std::cout) const
Output the set of states to a specified stream, in a human readable fashion.
Protected Functions
-
virtual void loadStates(const Header &h, boost::archive::binary_iarchive &ia)
Load the states from a binary archive ia, given the loaded header is h.
-
virtual void loadMetadata(const Header &h, boost::archive::binary_iarchive &ia)
Load the state metadata from a binary archive ia, given the loaded header is h. No metadata is actually loaded unless the StateStorageWithMetadata class is used.
-
virtual void storeStates(const Header &h, boost::archive::binary_oarchive &oa)
Store the states to a binary archive oa, given the stored header is h.
-
virtual void storeMetadata(const Header &h, boost::archive::binary_oarchive &oa)
Save the state metadata to a binary archive oa, given the stored header is h. No metadata is actually saved unless the StateStorageWithMetadata class is used.
-
void freeMemory()
Free the memory allocated for states.
Protected Attributes
-
StateSpacePtr space_
State space that corresponds to maintained states.
-
bool hasMetadata_
Flag indicating whether there is metadata associated to the states in this storage.
-
struct Header
Information stored at the beginning of the archive.
Public Functions
Public Members
-
std::uint_fast32_t marker
OMPL specific marker (fixed value)
-
std::size_t state_count
Number of states stored in the archive.
-
std::vector<int> signature
Signature of state space that allocated the saved states (see ompl::base::StateSpace::computeSignature())
-
std::uint_fast32_t marker