MeVisLab Toolbox Reference
asio::ExecutionPolicy Class Referenceabstract

Abstract base class for all asio::ExecutionPolicy derivatives. More...

#include <ExecutionPolicy.h>

Inheritance diagram for asio::ExecutionPolicy:
asio::AsynchronousExecution asio::SynchronousExecution

Public Member Functions

 ExecutionPolicy ()=default
 
 ExecutionPolicy (const ExecutionPolicy &)=default
 
ExecutionPolicyoperator= (const ExecutionPolicy &)=default
 
virtual ~ExecutionPolicy ()=default
 
virtual void execute (std::function< void()> callable)=0
 

Detailed Description

Abstract base class for all asio::ExecutionPolicy derivatives.

It defines an interface to execute a given callable in a way defined by the implementation of this interface.

Synopsis:

class DelayedExecution : public asio::ExecutionPolicy
{
public:
void execute(std::function<void()> callable) override
{
std::this_thread::sleep_for(std::chrono::milliseconds(100));
callable();
}
}
Abstract base class for all asio::ExecutionPolicy derivatives.

See also asio::AsynchronousExecution and asio::SynchronousExecution for implementations.

Definition at line 34 of file ExecutionPolicy.h.

Constructor & Destructor Documentation

◆ ExecutionPolicy() [1/2]

asio::ExecutionPolicy::ExecutionPolicy ( )
default

◆ ExecutionPolicy() [2/2]

asio::ExecutionPolicy::ExecutionPolicy ( const ExecutionPolicy )
default

◆ ~ExecutionPolicy()

virtual asio::ExecutionPolicy::~ExecutionPolicy ( )
virtualdefault

Member Function Documentation

◆ execute()

virtual void asio::ExecutionPolicy::execute ( std::function< void()>  callable)
pure virtual

◆ operator=()

ExecutionPolicy & asio::ExecutionPolicy::operator= ( const ExecutionPolicy )
default

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