33#include <google/protobuf/empty.pb.h>
34#include <grpcpp/impl/codegen/status.h>
35#include <grpcpp/impl/codegen/status_code_enum.h>
36#include <grpcpp/server_context.h>
37#include <grpcpp/support/status.h>
39#include <disciplines.grpc.pb.h>
99 grpc::Status
GetInfo(grpc::ServerContext *context,
100 const google::protobuf::Empty *request,
101 ::
philote::DisciplineProperties *response) override;
112 const ::
philote::StreamOptions *request,
113 google::protobuf::Empty *response) override;
124 const ::
philote::DisciplineOptions *request,
125 google::protobuf::Empty *response) override;
128 const ::google::protobuf::Empty *request,
129 ::
philote::OptionsList *response) override;
140 const google::protobuf::Empty *request,
141 grpc::ServerWriter<::
philote::VariableMetaData> *writer) override;
152 const google::protobuf::Empty *request,
153 grpc::ServerWriter<::
philote::PartialsMetaData> *writer) override;
163 grpc::Status
Setup(grpc::ServerContext *context,
164 const google::protobuf::Empty *request,
165 google::protobuf::Empty *response) override;
Base class for all analysis discipline servers.
Definition discipline_server.h:57
grpc::Status GetPartialDefinitions(grpc::ServerContext *context, const google::protobuf::Empty *request, grpc::ServerWriter<::philote::PartialsMetaData > *writer) override
RPC to define the discipline partials on the client side.
void UnlinkPointers()
Unlinks all pointers.
bool DisciplinePointerNull() noexcept
Checks if the Discipline pointer is null.
void LinkPointers(std::shared_ptr< philote::Discipline > discipline)
Links all pointers needed by the discipline base class.
grpc::Status SetOptions(grpc::ServerContext *context, const ::philote::DisciplineOptions *request, google::protobuf::Empty *response) override
Set the discipline options.
DisciplineServer()=default
Construct a new Discipline Server object.
::grpc::Status GetAvailableOptions(::grpc::ServerContext *context, const ::google::protobuf::Empty *request, ::philote::OptionsList *response) override
grpc::Status SetStreamOptions(grpc::ServerContext *context, const ::philote::StreamOptions *request, google::protobuf::Empty *response) override
RPC to define the discipline stream options to the client.
grpc::Status Setup(grpc::ServerContext *context, const google::protobuf::Empty *request, google::protobuf::Empty *response) override
RPC that invokes the discipline setup function.
grpc::Status GetVariableDefinitions(grpc::ServerContext *context, const google::protobuf::Empty *request, grpc::ServerWriter<::philote::VariableMetaData > *writer) override
RPC to define the discipline variables on the client side.
grpc::Status GetInfo(grpc::ServerContext *context, const google::protobuf::Empty *request, ::philote::DisciplineProperties *response) override
RPC to send the discipline properties to the client.
~DisciplineServer() noexcept override
Destroy the Discipline Server object.
Definition of the discipline base class.
Definition discipline.h:62
Definition discipline.h:43