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

#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 68 of file unique.h.

Constructor & Destructor Documentation

◆ UniquenessConstraint()

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

Constructor.

Definition at line 84 of file unique.h.

Referenced by fawkes::UniquenessViolationException::UniquenessViolationException().

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 96 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 110 of file unique.h.

◆ resource()

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

Get resource.

Returns
resource if set, NULL otherwise

Definition at line 121 of file unique.h.


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