Telamon
Classes | Namespaces | Typedefs | Enumerations | Variables
Versioning.hh File Reference

Definitions of ContentionFailureCounter, CasStatus, CasDescriptor, CasWithVersioning, VersionedAtomic. More...

Go to the source code of this file.

Classes

class  telamon_simulator::ContentionFailureCounter
 Measures the contention which was encountered during simulation. More...
 
struct  telamon_simulator::versioning::telamon_private::ReferencedBase< ValType >
 Base class for the Referenced class which contains the common data between different template classes. More...
 
struct  telamon_simulator::versioning::Referenced< ValType, Meta >
 Used to represent a value which is referenced by a "node" from the structure but with additional meta data(Meta) and versioning(VersionNum) More...
 
struct  telamon_simulator::versioning::Referenced< ValType, void >
 Used to represent a value which is referenced by a "node" from the structure. More...
 
class  telamon_simulator::versioning::VersionedAtomic< ValType, Meta >
 An atomic primitive which support versioning. The type which is wrapper has additional meta data. More...
 
class  telamon_simulator::versioning::VersionedAtomic< ValType, void >
 An atomic primitive which support versioning. The type which is wrapper has no additional meta data. More...
 

Namespaces

 telamon_simulator
 This module encapsulates the implementation of the simulator.
 
 telamon_simulator::versioning
 This modules contains the operatios and classes related to versioning of the objects used in the simulated algorihtm.
 
 telamon_simulator::versioning::telamon_private
 This module serves as a wrapper for the private data in the telamon_simulator module.
 

Typedefs

using telamon_simulator::versioning::VersionNum = uint_least64_t
 uint_least64_t is used to guarantee (minimize) the chance of the ABA problem occurring
 

Enumerations

enum class  telamon_simulator::CasStatus : char { Pending , Success , Failure }
 Represents the status of a CAS primitive.
 

Variables

template<typename Cas >
concept telamon_simulator::CasWithVersioning
 Solves the ABA problem. More...
 

Detailed Description

Definitions of ContentionFailureCounter, CasStatus, CasDescriptor, CasWithVersioning, VersionedAtomic.

VersionedAtomic is used by the user to implement the required functions of CasWithVersioning, requirement of the NormalizedRepresentation concept