17 #ifndef IGNITION_GAZEBO_SERVERCONFIG_HH_ 18 #define IGNITION_GAZEBO_SERVERCONFIG_HH_ 25 #include <sdf/Element.hh> 26 #include <ignition/gazebo/config.hh> 27 #include <ignition/gazebo/Export.hh> 34 inline namespace IGNITION_GAZEBO_VERSION_NAMESPACE {
36 class ServerConfigPrivate;
44 class PluginInfoPrivate;
74 const sdf::ElementPtr &_sdf);
95 public:
void SetEntityName(
const std::string &_entityName);
107 public:
void SetEntityType(
const std::string &_entityType);
117 public:
void SetFilename(
const std::string &_filename);
131 public:
const sdf::ElementPtr &Sdf()
const;
135 public:
void SetSdf(
const sdf::ElementPtr &_sdf);
170 public:
bool SetSdfString(
const std::string &_sdfString);
179 public:
void SetUpdateRate(
const double &_hz);
184 public: std::optional<double> UpdateRate()
const;
188 public:
bool UseLevels()
const;
192 public:
void SetUseLevels(
const bool _levels);
198 public:
bool UseDistributedSimulation()
const;
206 public:
void SetNetworkSecondaries(
unsigned int _secondaries);
212 public:
unsigned int NetworkSecondaries()
const;
221 public:
void SetNetworkRole(
const std::string &_role);
232 public:
bool UseLogRecord()
const;
236 public:
void SetUseLogRecord(
const bool _record);
244 public:
void SetLogRecordPath(
const std::string &_recordPath);
249 public:
bool LogIgnoreSdfPath()
const;
256 public:
void SetLogIgnoreSdfPath(
bool _ignore);
264 public:
void SetLogPlaybackPath(
const std::string &_playbackPath);
268 public:
bool LogRecordResources()
const;
272 public:
void SetLogRecordResources(
bool _recordResources);
280 public:
void SetLogRecordCompressPath(
const std::string &_path);
284 public:
unsigned int Seed()
const;
288 public:
void SetSeed(
unsigned int _seed);
293 public: std::optional<std::chrono::steady_clock::duration>
294 UpdatePeriod()
const;
308 public:
void SetResourceCache(
const std::string &_path);
316 public:
void SetPhysicsEngine(
const std::string &_physicsEngine);
321 public:
void AddPlugin(
const PluginInfo &_info);
Configuration parameters for a Server. An instance of this object can be used to construct a Server w...
Definition: ServerConfig.hh:42
Component< std::string, class NameTag > Name
This component holds an entity's name. The component has no concept of scoped names nor does it care ...
Definition: Name.hh:35
std::chrono::steady_clock::time_point Timestamp
Information about a plugin that should be loaded by the server. Currently supports attaching a plugi...
Definition: ServerConfig.hh:51
This library is part of the Ignition Robotics project.