20 class Segment :
public std::enable_shared_from_this<Segment>
48 void Collapse(std::shared_ptr<Revision> main);
80 static int versionCount;
Revision class for for keeping track of segment branches.
Class to keep track what Versioned variables were changed.
void Release()
Release Segment when it's no longer needed.
int refcount
Count of references for that Segment.
int version
Version of that Segment.
void Collapse(std::shared_ptr< Revision > main)
Compress branch of Segments into one Segment.
std::list< VersionedI * > written
List of all Versioned variables that were changed.
Segment()
Construct the very first Segment.
std::shared_ptr< Segment > parent
Previous Segment.
Interface for all Versioned classes.