SmartSoft Component-Developer API
|
Classes | |
struct | EventInputType |
struct used by IEventHandler and IEventClientPattern internally More... | |
class | IActiveQueryServerHandler |
class | IActiveQueueInputHandlerDecorator |
class | IClientPattern |
This is the base class for all client-patterns implementing a connection-oriented communication. More... | |
class | ICommunicationObject |
This is the base-class for all communication-objects. More... | |
class | ICommunicationPattern |
This is the base class for all communication-patterns. More... | |
class | IComponent |
Component management class. More... | |
class | ICorrelationId |
This pure virtual interface can be implemented using middleware-specific features to correlate e.g. More... | |
class | IEventClientPattern |
Handles the event service on client side. More... | |
class | IEventHandler |
Handler class to process fired events asynchronously at the client. More... | |
class | IEventServerPattern |
class | IEventTestHandler |
Condition Test Handler (decides at server whether event fires or not). More... | |
class | IInputHandler |
This template class implements the Observer part of the Observer design pattern for implementing a generic data-input-handler (i.e. More... | |
class | IManagedTask |
class | InputSubject |
This template class implements the Subject (also called Model) part of the Observer design pattern for implementing delegation of handling incoming data. More... | |
class | InputTaskTrigger |
class | IPushClientPattern |
Client part of the Push pattern to provide a flexible publish/subscribe service. More... | |
class | IPushServerPattern |
Server part of the Push pattern to provide a push service. More... | |
class | IQueryClientPattern |
The client part of Query pattern to perform two-way (request-response) communication. More... | |
class | IQueryServerHandler |
Handler Class for QueryServer for incoming requests. More... | |
class | IQueryServerPattern |
The server part of the Query pattern to perform two-way (request-response) communication. More... | |
class | ISendClientPattern |
Client part of the one-way, n->1 Send communication pattern. More... | |
class | ISendServerHandler |
Handler Class for SendServer for incoming commands. More... | |
class | ISendServerPattern |
Server part of the one-way, n->1 Send communication pattern. More... | |
class | IServerPattern |
This is the base class for all server-patterns. More... | |
class | IShutdownObserver |
This class implements the Observer part of the Observer design pattern for implementing a uniform shutdown procedure for all component's resources. More... | |
class | ITask |
Encapsulates a user-level thread. More... | |
class | ITaskInteractionObserver |
class | ITimerHandler |
class | ITimerManager |
class | IUniversalId |
A template class providing an interface for a universal identifier. More... | |
class | NumericCorrelationId |
A simple ID realization using a size_t type internally. More... | |
class | PrescaleManager |
This helper class allows dividing an update frequency by a given factor. More... | |
class | QueryServerTaskTrigger |
class | ShutdownSubject |
This class implements the Subject (also called Model) part of the Observer design pattern for implementing a uniform shutdown procedure for all component's resources. More... | |
class | TaskInteractionSubject |
class | TaskTriggerObserver |
class | TaskTriggerSubject |
class | TimedTaskTrigger |
Typedefs | |
using | Clock = std::chrono::steady_clock |
using | Duration = Clock::duration |
using | TimePoint = Clock::time_point |
using | CorrelationIdPtr = std::shared_ptr< ICorrelationId > |
using | EventIdPtr = CorrelationIdPtr |
using | QueryIdPtr = CorrelationIdPtr |
Enumerations | |
enum | EventMode { single, continuous } |
Mode of event. More... | |
enum | QueryStatus { QUERY_PENDING = 0, QUERY_VALIDANSWER = 1, QUERY_DISCONNECTED = 2, QUERY_WRONGID = 3 } |
QueryStatus. More... | |
enum | StatusCode { SMART_OK = 0, SMART_NODATA, SMART_CANCELLED, SMART_UNSUBSCRIBED, SMART_WRONGID, SMART_UNKNOWNSTATE, SMART_NOTACTIVATED, SMART_ACTIVATED, SMART_NOTALLOWED, SMART_ACTIVE, SMART_PASSIVE, SMART_DISCONNECTED, SMART_INCOMPATIBLESERVICE, SMART_PORTALREADYUSED, SMART_UNKNOWNPORT, SMART_SERVICEUNAVAILABLE, SMART_UNKNOWNCOMPONENT, SMART_TIMEOUT, SMART_STATUS = 256, SMART_ERROR = 512, SMART_ERROR_COMMUNICATION, SMART_ERROR_UNKNOWN, SMART_ERROR_FATAL } |
Status Code. More... | |
Functions | |
std::string | QueryStatusString (QueryStatus qs) |
global function used to convert a QueryStatus into ASCII representation. More... | |
std::string | StatusCodeConversion (const StatusCode &code) |
global function used to convert StatusCode into ASCII representation. More... | |
std::ostream & | operator<< (std::ostream &os, const StatusCode &status) |
ostream operator for StatusCode More... | |
using Smart::Clock = typedef std::chrono::steady_clock |
using Smart::CorrelationIdPtr = typedef std::shared_ptr<ICorrelationId> |
using Smart::Duration = typedef Clock::duration |
using Smart::EventIdPtr = typedef CorrelationIdPtr |
typedef CorrelationIdPtr Smart::QueryIdPtr |
using Smart::TimePoint = typedef Clock::time_point |
enum Smart::EventMode |
enum Smart::QueryStatus |
QueryStatus.
QueryStatus used to communicate the current QueryStatus from a QueryServer to a QueryClient for each individual query-request. A query-request can be either still pending if no answer has been yet calculated. If an answer for a specific query-request has been calculated by the QueryServer but this answer has not yet been fetched by the requesting QueryClient then this query-request is marked validanswer. A query-request can become invalidated if the QueryClient disconnects in the meantime.
enum Smart::StatusCode |
Status Code.
SmartSoft so far doesn't use exceptions generally, only in constructors. It uses return values for status & error handling of methods (see communication pattern classes for more details).
|
inline |
ostream operator for StatusCode
This operator prints a string representation of the StatusCode to ostream.
|
inline |
global function used to convert a QueryStatus into ASCII representation.
qs | QueryStatus |
|
inline |
global function used to convert StatusCode into ASCII representation.
code | StatusCode |