Regina 7.0 Calculation Engine
Classes | Namespaces | Functions
snapshot.h File Reference

Provides a mechanism for snapshotting objects at a particular moment in time. More...

#include <atomic>
#include <exception>

Classes

class  regina::SnapshotWriteError
 An exception thrown when someone tries to modify the read-only deep copy taken by a snapshot. More...
 
class  regina::Snapshot< T >
 Keeps a snapshot of an object of type T as it was at a particular moment in time. More...
 
class  regina::Snapshottable< T >
 A base class for images of type T that can be snapshotted at a particular moment in time. More...
 
class  regina::SnapshotRef< T >
 A reference to an image of type T that has been snapshotted at a particular moment in time. More...
 

Namespaces

namespace  regina
 Contains the entire Regina calculation engine.
 

Functions

template<class T >
void regina::swap (SnapshotRef< T > &a, SnapshotRef< T > &b) noexcept
 Swaps the given references so that they refer to each others' snapshots. More...
 

Detailed Description

Provides a mechanism for snapshotting objects at a particular moment in time.


Copyright © 1999-2021, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@maths.uq.edu.au).