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