File UniqueIdentifier.h

A file containing definitions of classes that are just different names.

Copyright

This code is licensed under the 3-clause BSD license.

Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.

See LICENSE.txt for details.

namespace Scine

This header file contains functions that allow for common notation for common things that can be done at a different degree of derivatives.

This header contains alias definitions defining which classes to use for the different degrees of derivatives.

namespace Utils
class UniqueIdentifier
#include <UniqueIdentifier.h>

Class for a unique identifier (handle).

It can f.i. be used to identify an instance unequivocally. Uses pimpl idiom to hide boost::uuid dependency.

Public Functions

UniqueIdentifier()

Default Constructor.

~UniqueIdentifier()

Default Destructor.

UniqueIdentifier(const UniqueIdentifier&)

Constructor that takes in a unique ID as a const reference.

UniqueIdentifier(UniqueIdentifier&&)

Constructor that takes in a unique ID as an rvalue reference.

UniqueIdentifier &operator=(const UniqueIdentifier&)

Assignment operator.

UniqueIdentifier &operator=(UniqueIdentifier&&)

Assignment operator.

std::string getStringRepresentation() const

Return a string representation of the unique identifier.

bool operator==(const UniqueIdentifier &rhs) const

Implementation of the “equal” operator.

bool operator!=(const UniqueIdentifier &rhs) const

Implementation of the “not equal” operator.

bool operator<(const UniqueIdentifier &rhs) const

Implementation of the “smaller than” operator.

Private Members

std::unique_ptr<Impl> pimpl