11#ifndef RTI_RECORDING_SERVICE_HPP_
12#define RTI_RECORDING_SERVICE_HPP_
14#include <dds/core/Reference.hpp>
15#include <rti/config/Logger.hpp>
17#include <rti/recording/Logger.hpp>
18#include <rti/recording/ServiceProperty.hpp>
19#include <rti/recording/detail/RecordingServiceImpl.hpp>
21namespace rti {
namespace recording {
83class Service :
public dds::core::Reference<RecordingServiceImpl> {
85 typedef RTI::Service::Admin::CommandRequest CommandRequest;
86 typedef RTI::Service::Admin::CommandReply CommandReply;
88 typedef dds::core::Reference<RecordingServiceImpl> Base;
89 OMG_DDS_REF_TYPE_NOTYPENAME(
92 RecordingServiceImpl);
107 : Base(new RecordingServiceImpl(property))
109 this->delegate()->remember_reference(this->delegate());
163 template <
typename HookFunc>
166 const HookFunc& shutdown_hook)
167 : Base(new RecordingServiceImpl(
169 new
rti::routing::detail::ShutdownHookForwarder<HookFunc>(
172 this->delegate()->remember_reference(this->delegate());
176 explicit Service(Base::DELEGATE_REF_T reference) : Base(reference)
178 if (this->delegate()) {
179 this->delegate()->remember_reference(this->delegate());
191 this->delegate()->start();
201 this->delegate()->stop();
256 return this->delegate()->execute_command(request);
273 const CommandRequest& request)
275 return this->delegate()->execute_command(reply, request);
284 rti::recording::Logger::instance().
warn(
285 "Calling 'rti::recording::Service::finalize_globals()' is no "
286 "longer necessary and the function will be removed in future "
292typedef Service RecordingService;
void warn(const std::string &msg)
Logs as message with WARNING level.
Configuration for a RTI Recording Service object.
Definition: ServiceProperty.hpp:105
The RTI Recording Service.
Definition: Service.hpp:83
void start()
Starts RTI Recording Service.
Definition: Service.hpp:189
static void finalize_globals()
Definition: Service.hpp:282
void stop()
Stops RTI Recording Service.
Definition: Service.hpp:199
CommandReply & execute_command(CommandReply &reply, const CommandRequest &request)
Executes an Administration command on this service.
Definition: Service.hpp:271
Service(const ServiceProperty &property, const HookFunc &shutdown_hook)
Creates a RTI Recording Service instance.
Definition: Service.hpp:164
CommandReply execute_command(const CommandRequest &request)
Executes an Administration command on this service.
Definition: Service.hpp:254
Service(const ServiceProperty &property)
Creates a RTI Recording Service instance.
Definition: Service.hpp:106
The RTI namespace.
Definition: RecordingServiceImpl.hpp:22