Mercurial > hg > piper-cpp
comparison vamp-client/CapnpRRClient.h @ 209:ac4f5f8ee0e7
Merge branch 'dev/step-and-block-size'
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Thu, 09 Feb 2017 14:16:37 +0000 |
parents | ad6025dc0b04 |
children | df65480a08de |
comparison
equal
deleted
inserted
replaced
205:587e9691a44e | 209:ac4f5f8ee0e7 |
---|---|
64 * RpcRequest/RpcResponse structures with a single process call rather | 64 * RpcRequest/RpcResponse structures with a single process call rather |
65 * than having individual RPC methods, with a synchronous transport | 65 * than having individual RPC methods, with a synchronous transport |
66 * such as a subprocess pipe arrangement. Only one request can be | 66 * such as a subprocess pipe arrangement. Only one request can be |
67 * handled at a time. This class is thread-safe if and only if it is | 67 * handled at a time. This class is thread-safe if and only if it is |
68 * constructed with a thread-safe SynchronousTransport implementation. | 68 * constructed with a thread-safe SynchronousTransport implementation. |
69 * | |
70 * This class takes Vamp-like structures (Plugin and the classes in | |
71 * vamp-support) and uses them to communicate with a Piper server | |
72 * using the Cap'n Proto serialisation of the Piper API. The transport | |
73 * layer (and thus the nature of the server) is defined by the | |
74 * SynchronousTransport passed to the constructor. | |
75 * | |
76 * This class implements both the Loader interface (which constructs | |
77 * PluginStub objects) and the PluginClient (which accepts PluginStubs | |
78 * and maps them into Piper handles). | |
69 */ | 79 */ |
70 class CapnpRRClient : public PluginClient, | 80 class CapnpRRClient : public PluginClient, |
71 public Loader | 81 public Loader |
72 { | 82 { |
73 // unsigned to avoid undefined behaviour on possible wrap | 83 // unsigned to avoid undefined behaviour on possible wrap |