#include <conditionvariable_dep.h>
This class represents a dependency on a condition variable with unique ownership semantics.
Public Member Functions | |
ConditionVariableDependency ()=default | |
ConditionVariableDependency (const ConditionVariableDependency &)=delete | |
void | operator= (const ConditionVariableDependency &)=delete |
ConditionVariableDependency (ConditionVariableDependency &&src)=default | |
ConditionVariableDependency & | operator= (ConditionVariableDependency &&src) |
ConditionVariableDependency (ConditionVariableRef &cond) | |
ConditionVariableDependency & | operator= (ConditionVariableRef &newCond) |
~ConditionVariableDependency () | |
void | Reset () |
Private Attributes | |
ConditionVariableRef | _cond |
|
default |
Default constructor. Creates an 'null dependency' that is not associated with any condition variable.
|
delete |
Deleted copy constructor.
|
default |
Move constructor. Transfers ownership of dependency src
to the created instance. Afterwards, src represents a 'null dependency' that is no longer associated with a condition variable.
|
explicit |
Constructs a new dependency of the given condition variable.
Releases this dependency.
|
delete |
Deleted copy assignment.
ConditionVariableDependency& operator= | ( | ConditionVariableDependency && | src | ) |
Move assignment. Transfers ownership of the depending condition variable to this instance. Transfers ownership of dependency src
to this instance. If this instance already holds a dependency, it is released by calling Set() on it. Afterwards, src no longer holds a dependency.
ConditionVariableDependency& operator= | ( | ConditionVariableRef & | newCond | ) |
Assigns this instance as a dependency of the given condition variable. If this instance already holds a dependency, it is released before that.
void Reset | ( | void | ) |
Releases this dependency. Afterwards, the instance represents a 'null dependency' that is no longer associated with a condition variable.
|
private |