Caller.h File Reference
This header defines the Caller class and Wisp communication protocol support classes. More...
#include <ssrc/spread.h>
#include <ssrc/wisp/protocol/ServiceProtocol.h>
#include <ssrc/wisp/utility/make_smart_ptr.h>
#include <queue>
#include <sstream>
#include <stdexcept>
#include <tuple>
#include <boost/multi_index_container.hpp>
#include <boost/multi_index/mem_fun.hpp>
#include <boost/multi_index/hashed_index.hpp>
#include <boost/multi_index/composite_key.hpp>
Include dependency graph for Caller.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Classes |
|
struct | ssrc::wisp::protocol::detail::VoidReturnType |
An empty structure used to represent a void return type for Wisp calls. More... |
|
struct | ssrc::wisp::protocol::CallTraits< CallerType, ParameterType, ReturnType > |
The three-parameter CallTraits template defines all the type information characterizing a TwoWay call. More... |
|
struct | ssrc::wisp::protocol::CallTraits< CallerType, ParameterType, detail::VoidReturnType > |
The two-parameter CallTraits template defines all the type information characterizing a OneWay call. More... |
|
class | ssrc::wisp::protocol::CallException |
A CallException is thrown when a call cannot complete because of an unexpected condition. More... |
|
struct | ssrc::wisp::protocol::CallHeader |
Every call is described by a CallHeader followed by a message. More... |
|
struct | ssrc::wisp::protocol::MessageInfo |
Stores all information associated with a received call, including the raw message data. More... |
|
class | ssrc::wisp::protocol::Caller< PT > |
class | ssrc::wisp::protocol::Caller< PT >::Future< ReturnType > |
Namespaces |
|
ssrc::wisp | |
The ssrc::wisp namespace is an umbrella for the namespaces that implement the Wisp development framework. |
|
ssrc::wisp::protocol | |
The protocol namespace contains classes that define the framework for implementing and accessing Wisp service protocols. |
|
ssrc::wisp::protocol::detail | |
The protocol::detail namespace defines implementation-specific structures that are not intended for use by library client code. |
|
Macros |
|
#define | WISP_ONE_WAY_CALL(caller, method) |
Defines the CallTraits for a one-way call. More... |
|
#define | WISP_TWO_WAY_CALL(caller, method, result) |
Defines the CallTraits for a two-way call. More... |
|
#define | __WISP_CALLER_MAX_UNFRAGMENTED_MESSAGE_SIZE 131072U |
#define | __WISP_WRITE_AREA_EXHAUSTED "write area exhausted" |
Typedefs |
|
typedef std::uint32_t | ssrc::wisp::protocol::wisp_call_token |
The type of a call token. More... |
|
typedef std::uint8_t | ssrc::wisp::protocol::wisp_call_role |
The type used by the CallHeader to store the CallRole of the call being made. More... |
|
typedef std::shared_ptr< MessageInfo > | ssrc::wisp::protocol::message_info_ptr |
Enumerations |
|
enum | ssrc::wisp::protocol::CallType { ssrc::wisp::protocol::OneWay, ssrc::wisp::protocol::TwoWay } |
CallType defines allowable messaging call types. More... |
|
enum | ssrc::wisp::protocol::CallRole { ssrc::wisp::protocol::OneWayRequest, ssrc::wisp::protocol::TwoWayRequest, ssrc::wisp::protocol::TwoWayResponse } |
The role of a call being made. More... |
|
Variables |
|
const Message::Service | ssrc::wisp::protocol::DefaultMessageServiceType = Message::SafeSelfDiscard |
Wisp calls can request a Spread message service type if desired. More... |
|
const bool | ssrc::wisp::protocol::GroupMembershipEnable = true |
const bool | ssrc::wisp::protocol::GroupMembershipDisable = false |
Detailed Description
This header defines the Caller class and Wisp communication protocol support classes.
Definition in file Caller.h.
Macro Definition Documentation
#define __WISP_CALLER_MAX_UNFRAGMENTED_MESSAGE_SIZE 131072U |
#define __WISP_WRITE_AREA_EXHAUSTED "write area exhausted" |
#define WISP_ONE_WAY_CALL | ( | caller, | |
method | |||
) |
#define WISP_TWO_WAY_CALL | ( | caller, | |
method, | |||
result | |||
) |
Value:
typedef NS_SSRC_WISP_PROTOCOL::CallTraits<caller, Message ## method, Message ## result> \
Call ## method
Defines the CallTraits for a two-way call.
- Parameters
-
caller The type of Caller through which the call must be made. method The name of the call. result The type returned by the call.
Copyright © 2006-2012 Savarese Software Research Corporation. All rights reserved.
Copyright © 2017 Savarese Software Research Corporation. All rights reserved