Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 24 additions & 3 deletions ros_gz_sim/ros_gz_sim/actions/gzserver.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ def __init__(
create_own_container: Union[bool, SomeSubstitutionsType] = False,
use_composition: Union[bool, SomeSubstitutionsType] = False,
initial_sim_time: Union[float, SomeSubstitutionsType] = 0.0,
verbosity_level: Union[int, SomeSubstitutionsType] = 4,
**kwargs
) -> None:
"""
Expand All @@ -109,6 +110,8 @@ def __init__(
:param: container_name Name of container that nodes will load in if use composition.
:param: create_own_container Whether to start a ROS container when using composition.
:param: use_composition Use composed bringup if True.
:param: initial_sim_time: The initial simulation time.
:param: verbosity_level: The verbosity level of the Gazebo server (0=FATAL, 4=DEBUG).
"""
super().__init__(**kwargs)
self.__world_sdf_file = world_sdf_file
Expand Down Expand Up @@ -140,6 +143,13 @@ def __init__(
else:
self.__initial_sim_time = normalize_typed_substitution(initial_sim_time, float)

if isinstance(verbosity_level, str):
self.__verbosity_level = normalize_typed_substitution(
TextSubstitution(text=verbosity_level), int
)
else:
self.__verbosity_level = normalize_typed_substitution(verbosity_level, int)

@classmethod
def parse(cls, entity: Entity, parser: Parser):
"""Parse gz_server."""
Expand Down Expand Up @@ -169,6 +179,10 @@ def parse(cls, entity: Entity, parser: Parser):
'initial_sim_time', data_type=str,
optional=True)

verbosity_level = entity.get_attr(
'verbosity_level', data_type=str,
optional=True)

if isinstance(world_sdf_file, str):
world_sdf_file = parser.parse_substitution(world_sdf_file)
kwargs['world_sdf_file'] = world_sdf_file
Expand All @@ -194,6 +208,10 @@ def parse(cls, entity: Entity, parser: Parser):
initial_sim_time = parser.parse_substitution(initial_sim_time)
kwargs['initial_sim_time'] = initial_sim_time

if isinstance(verbosity_level, str):
verbosity_level = parser.parse_substitution(verbosity_level)
kwargs['verbosity_level'] = verbosity_level

return cls, kwargs

def execute(self, context: LaunchContext) -> Optional[List[Action]]:
Expand Down Expand Up @@ -229,7 +247,8 @@ def execute(self, context: LaunchContext) -> Optional[List[Action]]:
output='screen',
parameters=[{'world_sdf_file': self.__world_sdf_file,
'world_sdf_string': self.__world_sdf_string,
'initial_sim_time': self.__initial_sim_time}],
'initial_sim_time': self.__initial_sim_time,
'verbosity_level': self.__verbosity_level}],
))

# Composable node with container configuration
Expand All @@ -246,7 +265,8 @@ def execute(self, context: LaunchContext) -> Optional[List[Action]]:
name='gz_server',
parameters=[{'world_sdf_file': self.__world_sdf_file,
'world_sdf_string': self.__world_sdf_string,
'initial_sim_time': self.__initial_sim_time}],
'initial_sim_time': self.__initial_sim_time,
'verbosity_level': self.__verbosity_level}],
extra_arguments=[{'use_intra_process_comms': True}],
),
],
Expand All @@ -264,7 +284,8 @@ def execute(self, context: LaunchContext) -> Optional[List[Action]]:
name='gz_server',
parameters=[{'world_sdf_file': self.__world_sdf_file,
'world_sdf_string': self.__world_sdf_string,
'initial_sim_time': self.__initial_sim_time}],
'initial_sim_time': self.__initial_sim_time,
'verbosity_level': self.__verbosity_level}],
extra_arguments=[{'use_intra_process_comms': True}],
),
],
Expand Down
3 changes: 2 additions & 1 deletion ros_gz_sim/src/gzserver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,9 @@ void GzServer::OnStart()
auto world_sdf_file = this->declare_parameter("world_sdf_file", "");
auto world_sdf_string = this->declare_parameter("world_sdf_string", "");
auto initial_sim_time = this->declare_parameter("initial_sim_time", 0.0);
const auto verbosity_level = this->declare_parameter("verbosity_level", 4);

gz::common::Console::SetVerbosity(4);
gz::common::Console::SetVerbosity(verbosity_level);
gz::sim::ServerConfig server_config;

if (!world_sdf_file.empty()) {
Expand Down
Loading