Volume Cartographer 2.27.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
Render.hpp
Go to the documentation of this file.
1#pragma once
2
5#include <memory>
6
7#include <smgl/Graph.hpp>
8
11
12namespace volcart
13{
14
27{
28public:
30 using Pointer = std::shared_ptr<Render>;
31
33 explicit Render(filesystem::path path);
34
36 Render(filesystem::path path, Identifier uuid, std::string name);
37
39 static auto New(filesystem::path path) -> Pointer;
40
43 static auto New(filesystem::path path, Identifier uuid, std::string name)
44 -> Pointer;
45
56 [[nodiscard]] auto graph() const -> std::shared_ptr<smgl::Graph>;
57
58private:
60 mutable std::shared_ptr<smgl::Graph> graph_;
61};
62} // namespace volcart
Base class for objects stored on disk with an associated metadata file.
auto path() const -> filesystem::path
Get the path to the object.
auto name() const -> std::string
Get the human-readable name for the object.
Render data.
Definition: Render.hpp:27
std::shared_ptr< smgl::Graph > graph_
Definition: Render.hpp:60
auto graph() const -> std::shared_ptr< smgl::Graph >
Get the stored render graph.
Render(filesystem::path path)
Load a Render from file.
std::shared_ptr< Render > Pointer
Definition: Render.hpp:30
static auto New(filesystem::path path) -> Pointer
static auto New(filesystem::path path, Identifier uuid, std::string name) -> Pointer
Render(filesystem::path path, Identifier uuid, std::string name)
Make a new Render in a directory.
Volume Cartographer library