Wildmeshing Toolkit
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
wmtk::history::VolumeHistory Struct Reference

The tets around every operation that changed a tet mesh's tracked surface, which, with the surface history, is what a map of the volume needs: every other operation leaves each region where it is in space. More...

#include <VolumeHistory.hpp>

Public Member Functions

void save (const std::string &path) const
 
std::vector< uint8_t > to_bytes () const
 

Static Public Member Functions

static VolumeHistory load (const std::string &path)
 
static VolumeHistory from_bytes (const std::vector< uint8_t > &bytes)
 

Public Attributes

std::vector< std::vector< int64_t > > regions
 The regions, each the set of tags of its tets, sorted.
 
std::map< int64_t, std::string > tag_names
 
std::vector< VolumeEdit > edits
 In the order of the surface edits they made.
 
uint64_t surface_edit_offset = 0
 
std::optional< SurfaceKey > surface
 

Detailed Description

The tets around every operation that changed a tet mesh's tracked surface, which, with the surface history, is what a map of the volume needs: every other operation leaves each region where it is in space.

Member Function Documentation

◆ save()

void wmtk::history::VolumeHistory::save ( const std::string &  path) const

To and from a volume history file (read_history, write_history), and its bytes in memory: what a memory call returns as report["volume_history"]. Loading checks every edit and throws on damaged bytes; to_bytes() refuses an edit a recorder would not make.

Member Data Documentation

◆ surface

std::optional<SurfaceKey> wmtk::history::VolumeHistory::surface

That surface history's key, which a volume map checks the one it is given against; unset for a history put together in memory, which is not checked.

◆ surface_edit_offset

uint64_t wmtk::history::VolumeHistory::surface_edit_offset = 0

The surface history file these edits index into, and the offset of the recorder's first edit in it (the input's own edits come first there).

◆ tag_names

std::map<int64_t, std::string> wmtk::history::VolumeHistory::tag_names

The application's labels of the tags, where it has them: how the tet mesh files it writes name their groups (simwild: a physical group per tag, labelled as io::collect_tags labels them, and the untagged tets "ambient" unless a tag is).


The documentation for this struct was generated from the following files: