# saga::rpc::rpc Class Reference

This class represents a remote function handle, which can be called (repeatedly), and returns the result of the respective remote procedure invocation. More...

`#include <rpc.hpp>`

Inheritance diagram for saga::rpc::rpc:

[legend]

List of all members.

## Public Member Functions
| rpc (session const &s, saga::url name=saga::url())
| Initializes a remote function handle.
| rpc (saga::url name)
| Brief description starts here.
| rpc (void)
| Brief description starts here.
| ~rpc (void)
| Destroys the object.
void | call (std::vector< parameter > parameters)
| Call the remote procedure.
void | close (double timeout=0.0)
| Closes the rpc handle instance.
## Static Public Member Functions
static rpc | create (session const &s, saga::url name=saga::url())
| Factory function resembling rpc(session, url) constructor.
static rpc | create (saga::url name=saga::url())
| Factory function resembling rpc(url) constructor.
template<typename Tag>
static saga::task | create (saga::url name=saga::url())

## Detailed Description

This class represents a remote function handle, which can be called (repeatedly), and returns the result of the respective remote procedure invocation.

## Constructor & Destructor Documentation

saga::rpc::rpc::rpc | ( | session const & | s,
|  | saga::url | name = `saga::url()` |
| ) |  |  | `[explicit]`

Initializes a remote function handle.

Returns:
  The newly created object.

saga::rpc::rpc::rpc | ( | saga::url | name | ) | `[explicit]`

Brief description starts here.

saga::rpc::rpc::rpc | ( | void |  | ) |

Brief description starts here.

saga::rpc::rpc::~rpc | ( | void |  | ) |

Destroys the object.

## Member Function Documentation

static rpc saga::rpc::rpc::create | ( | session const & | s,
|  | saga::url | name = `saga::url()` |
| ) |  |  | `[inline, static]`

Factory function resembling rpc(session, url) constructor.

static rpc saga::rpc::rpc::create | ( | saga::url | name = `saga::url()` | ) | `[inline, static]`

Factory function resembling rpc(url) constructor.

template<typename Tag>

static saga::task saga::rpc::rpc::create | ( | saga::url | name = `saga::url()` | ) | `[inline, static]`

void saga::rpc::rpc::call | ( | std::vector< parameter > | parameters | ) | `[inline]`

Call the remote procedure.

void saga::rpc::rpc::close | ( | double | timeout = `0.0` | ) | `[inline]`

Closes the rpc handle instance.

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

- packages/rpc/rpc.hpp
- rpc.cpp