{ "format": 1, "id": "saw-remote", "kind": "class", "name": "remote", "namespace": "saw", "module": "remote", "header": "modules/remote/c++/remote.hpp", "brief_description": "Reference backend structure.", "detailed_description": [ [ "The primary template is never defined. A backend is added by specializing this class on its tag type, which is the only place the backend itself appears in the public api. An unsupported tag fails with a static_assert instead of a linker error." ], [ "Every", {"name": "data_server", "id": "saw-data_server"}, "and", {"name": "rpc_server", "id": "saw-rpc_server"}, "of a backend is owned and handed out by its remote, which is also the registry a client searches when it connects." ] ], "templates": [ { "name": "Remote", "kind": "type", "brief_description": "Tag type of the backend, e.g. rmt::Loopback." } ], "specializations": [ { "name": "remote< rmt::Loopback >", "id": "saw-remote-loopback", "brief_description": "In process backend. Data stays where it is and calls are answered inline." } ] }