9 #ifndef RMF_FILE_HANDLE_H
10 #define RMF_FILE_HANDLE_H
19 #include "RMF/config.h"
20 #include "RMF/internal/SharedData.h"
23 #include "internal/SharedData.h"
56 friend class std::shared_ptr<internal::SharedData>;
61 #if !defined(RMF_DOXYGEN) && !defined(SWIG)
62 FileHandle(std::shared_ptr<internal::SharedData> shared_);
67 RMF_USAGE_CHECK(!get_is_closed(),
"Operation on closed file.");
84 if (!shared_->get_has_associated_node(d)) {
87 return NodeHandle(shared_->get_associated_node(d), shared_);
91 NodeHandle get_node_from_association(
void* d)
const;
110 void set_description(std::string descr)
const;
115 void set_producer(std::string)
const;
Default implementation for types.h.
NodeHandle get_node_from_association(const T &d) const
A handle for a particular node in the hierarchy.
FileHandle create_rmf_buffer(BufferHandle buffer)
Create an RMF in a buffer.
const FrameType FRAME
A frame in a sequence of frames.
A handle for a read-only RMF file.
FileHandle create_rmf_file(std::string path)
Create an RMF from a file system path.
A handle for an RMF file.
Declaration of NodeHandle.
A strong enum with an associated string name for each value.
std::vector< FileHandle > FileHandles
Pass a list of them.
The various enums used in RMF.
Manage a shared buffer for storing a RMF.
Various compiler workarounds.
Handle read/write of Model data from/to files.
NodeHandle get_root_node() const
Return the root of the hierarchy stored in the file.