PLCnext API Documentation 25.0.2.69
|
This class is used as base class of structures, which shall be adapted by DualDomain to support download-changes operations. More...
#include <DomainBase.hpp>
Public Member Functions | |
DomainBase (const DomainBase &arg)=delete | |
DomainBase (DomainBase &&arg) noexcept=delete | |
DomainBase & | operator= (const DomainBase &arg)=delete |
DomainBase & | operator= (DomainBase &&arg) noexcept=delete |
~DomainBase (void) | |
The default destructor. | |
DomainBase (void) | |
Default constructor. | |
bool | IsBackgroundDomain (void) const |
Determines if this instance is the background domain. More... | |
bool | IsForegroundDomain (void) const |
Determines if this instance is the foreground domain. More... | |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value T & | GetForegroundDomain (void) |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value const T & | GetForegroundDomain (void) const |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value T & | GetBackgroundDomain (void) |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value const T & | GetBackgroundDomain (void) const |
Impl & | GetImpl (void) |
For internal use only. | |
const Impl & | GetImpl (void) const |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value T & | GetForegroundDomain () |
Gets the instance from the foreground domain. More... | |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value const T & | GetForegroundDomain () const |
Gets the instance from the foreground domain. More... | |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value T & | GetBackgroundDomain () |
Gets the instance from the background domain. More... | |
template<class T > requires std::is_base_of<DomainBase, T> | |
::value const T & | GetBackgroundDomain () const |
Gets the instance from the background domain. More... | |
This class is used as base class of structures, which shall be adapted by DualDomain to support download-changes operations.
The specialized domain class should contain all PLC project related data of a single PLC component and shall derive from this class. Use the DualDomain to double the data of the specialized domain for supporting the download-changes feature.
The specialized domain class might be easily adapted by the template class DualDomain<T>
through assigning it as template parameter T
.
In the constructor of the drived class all member functions of this class may not be called. There is a hidden setup step by DualDomain<T>
that is executed after the constructor of the derived type. Calling any of this class' member functions in the derived class' constructor will result in an exception.
The objects of this class are inteded to be referred to by other objects. Therefore, copying and moving is not possible.
|
inline |
Gets the instance from the background domain.
|
inline |
Gets the instance from the background domain.
|
inline |
Gets the instance from the foreground domain.
|
inline |
Gets the instance from the foreground domain.
bool Arp::Plc::Domain::Commons::DomainBase::IsBackgroundDomain | ( | void | ) | const |
Determines if this instance is the background domain.
true
if this instance is the background domain, otherwise false
.bool Arp::Plc::Domain::Commons::DomainBase::IsForegroundDomain | ( | void | ) | const |
Determines if this instance is the foreground domain.
true
if this instance is the foreground domain, otherwise false
.