Fawkes API  Fawkes Development Version
fawkes::UniquenessConstraint< ResourceType > Class Template Reference

Uniqueness constraint. More...

#include <>>

Inheritance diagram for fawkes::UniquenessConstraint< ResourceType >:

Public Member Functions

 UniquenessConstraint ()
 Constructor. More...
 
void add (ResourceType *r)
 Add resource. More...
 
void remove (ResourceType *p)
 Remove resource. More...
 
ResourceType * resource ()
 Get resource. More...
 

Detailed Description

template<class ResourceType>
class fawkes::UniquenessConstraint< ResourceType >

Uniqueness constraint.

This constraint keeps track of a resource that may exist at most once.

The resource can only be added if no resource has been added and not been removed before. A resource can always be removed.

Author
Tim Niemueller

Definition at line 63 of file unique.h.

Constructor & Destructor Documentation

◆ UniquenessConstraint()

template<class ResourceType >
fawkes::UniquenessConstraint< ResourceType >::UniquenessConstraint ( )

Constructor.

Definition at line 80 of file unique.h.

Member Function Documentation

◆ add()

template<class ResourceType>
void fawkes::UniquenessConstraint< ResourceType >::add ( ResourceType *  r)

Add resource.

This will add the resources or throw an exception if there is already a resource.

Parameters
rresource object to add
Exceptions
UniquenessViolationExceptionthrown, if a second resource is added

Definition at line 93 of file unique.h.

◆ remove()

template<class ResourceType>
void fawkes::UniquenessConstraint< ResourceType >::remove ( ResourceType *  r)

Remove resource.

Parameters
rresource object to remove

Definition at line 108 of file unique.h.

◆ resource()

template<class ResourceType >
ResourceType * fawkes::UniquenessConstraint< ResourceType >::resource ( )

Get resource.

Returns
resource if set, NULL otherwise

Definition at line 118 of file unique.h.


The documentation for this class was generated from the following file: