Samchon Framework for CPP  1.0.0
samchon::example::interaction::SlaveDriver Class Reference

A slave system's driver for optimization. More...

#include <SlaveDriver.hpp>

Collaboration diagram for samchon::example::interaction::SlaveDriver:

Public Member Functions

 SlaveDriver ()
 Default Constructor. More...
 
virtual void replyData (std::shared_ptr< Invoke > invoke) override
 Handling replied message from an external system. More...
 
- Public Member Functions inherited from samchon::protocol::master::ParallelClient
 ParallelClient ()
 Default Constructor. More...
 
- Public Member Functions inherited from samchon::protocol::master::ParallelSystem
 ParallelSystem ()
 Default Constructor. More...
 
virtual void construct (std::shared_ptr< library::XML >) override
 Construct data of the Entity from an XML object. More...
 
virtual auto toXML () const -> std::shared_ptr< library::XML > override
 Get an XML object represents the EntityGroup. More...
 
- Public Member Functions inherited from samchon::protocol::ExternalSystem
 ExternalSystem ()
 Default Constructor. More...
 
virtual auto key () const -> std::string override
 Get a key that can identify the Entity uniquely. More...
 
virtual auto TAG () const -> std::string override
 A tag name when represented by XML. More...
 
virtual auto CHILD_TAG () const -> std::string override
 A tag name of children. More...
 
- Public Member Functions inherited from samchon::protocol::EntityGroup< _Container, _ETy, T >
 EntityGroup ()
 Default Constructor. More...
 
auto has (const std::string &key) const -> bool
 Indicates whether a container has an object having the specified identifier. More...
 
auto get (const std::string &key) -> value_type &
 Access the element by specified identifier(key). More...
 
auto get (const std::string &key) const -> const value_type &
 Access the const element by specified identifier(key). More...
 
- Public Member Functions inherited from samchon::protocol::Entity
 Entity ()
 Default Constructor. More...
 
- Public Member Functions inherited from samchon::protocol::IEntityGroup
 IEntityGroup ()
 Default Constructor. More...
 
- Public Member Functions inherited from samchon::protocol::IClient
 IClient ()
 Default Constructor. More...
 
virtual void listen ()
 Listens message from a related system. More...
 
virtual void sendData (std::shared_ptr< Invoke >)
 Sends message to a related system. More...
 
- Public Member Functions inherited from samchon::protocol::IProtocol
 IProtocol ()
 Default Constructor. More...
 
- Public Member Functions inherited from samchon::protocol::ExternalClient
 ExternalClient ()
 Default Constructor. More...
 
virtual void start () override
 Start interaction. More...
 

Additional Inherited Members

- Protected Member Functions inherited from samchon::protocol::master::ParallelSystem
virtual auto createChild (std::shared_ptr< library::XML >) -> ExternalSystemRole *override
 Factory method of a child Entity. More...
 
virtual void _replyData (std::shared_ptr< Invoke >) override
 A method for pre-processing replied Invoke message. More...
 
- Protected Member Functions inherited from samchon::protocol::IClient
virtual auto BUFFER_SIZE () const -> size_t
 Buffer size of network I/O. More...
 
- Protected Attributes inherited from samchon::protocol::master::ParallelSystem
ParallelSystemArraysystemArray
 A master that the system is belonged to. More...
 
PRInvokeHistoryArrayhistoryArray
 A list of history log for reported Invoke messages. More...
 
PRInvokeHistoryArrayprogressArray
 A list of invoke messages on progress. More...
 
double performance
 A performance index. More...
 
- Protected Attributes inherited from samchon::protocol::ExternalSystem
std::string name
 A name can identify an external system. More...
 
std::string ip
 An ip address of an external system. More...
 
int port
 A port number of an external system. More...
 
- Protected Attributes inherited from samchon::protocol::IClient
Socket * socket
 Socket for network I/O. More...
 
std::mutex * sendMtx
 A mutex for sending message. More...
 

Detailed Description

A slave system's driver for optimization.

SlaveDriver is a boundary class interacting with a slave system by inheriting master::ParallelClient. The SlaveDriver is built for providing a guidance of utilizing slave driver in master module of protocol.

example_interaction.png
example_interaction_network_diagram.png
[Inherited]
Author
Jeongho Nam http://samchon.org

Definition at line 39 of file SlaveDriver.hpp.

Constructor & Destructor Documentation

samchon::example::interaction::SlaveDriver::SlaveDriver ( )
inline

Default Constructor.

Definition at line 49 of file SlaveDriver.hpp.

Member Function Documentation

virtual void samchon::example::interaction::SlaveDriver::replyData ( std::shared_ptr< Invoke )
inlineoverridevirtual

Handling replied message from an external system.

If there's a related ExternalSystemRole, shifts responsibility to the ExternalSystemRole.

Parameters
invokeReplied Invoke message

Reimplemented from samchon::protocol::ExternalSystem.

Definition at line 55 of file SlaveDriver.hpp.


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