maliput
road_network_loader.h File Reference
#include <map>
#include <string>
#include "maliput/api/road_network.h"
#include "maliput/plugin/maliput_plugin_type.h"
Include dependency graph for road_network_loader.h:
This graph shows which files directly or indirectly include this file:

Classes

class  RoadNetworkLoader
 Interface class for creating a RoadNetwork loader functor. More...
 

Namespaces

 maliput
 Code in this file is inspired by: https://github.com/RobotLocomotion/drake/blob/master/common/text_logging.h.
 
 maliput::plugin
 

Macros

#define REGISTER_ROAD_NETWORK_LOADER_PLUGIN(PluginName, RoadNetworkLoaderClass)
 

Typedefs

typedef void * RoadNetworkLoaderPtr
 Additional name for the MakeRoadNetworkLoader method's return type. More...
 

Macro Definition Documentation

◆ REGISTER_ROAD_NETWORK_LOADER_PLUGIN

#define REGISTER_ROAD_NETWORK_LOADER_PLUGIN (   PluginName,
  RoadNetworkLoaderClass 
)
Value:
extern "C" char* GetMaliputPluginId() { return (char*)PluginName; } \
extern "C" maliput::plugin::MaliputPluginType GetMaliputPluginType() { \
} \
extern "C" maliput::plugin::RoadNetworkLoaderPtr MakeRoadNetworkLoader() { return new RoadNetworkLoaderClass(); }

Macro for automating the creation of the correspondent functions for the correct implementation of a RoadNetworkLoader plugin.

Parameters
PluginNameIs the name of the plugin and must be unique among all the plugins.
RoadNetworkLoaderClassIs the implementation of the maliput::plugin::RoadNetworkLoader.
maliput::plugin::MaliputPluginType
MaliputPluginType
Types of maliput plugin.
Definition: maliput_plugin_type.h:39
maliput::plugin::RoadNetworkLoaderPtr
void * RoadNetworkLoaderPtr
Additional name for the MakeRoadNetworkLoader method's return type.
Definition: road_network_loader.h:53
maliput::plugin::kRoadNetworkLoader
@ kRoadNetworkLoader
Definition: maliput_plugin_type.h:40
maliput::plugin::MakeRoadNetworkLoader
std::unique_ptr< maliput::plugin::RoadNetworkLoader > MakeRoadNetworkLoader(const std::string &road_network_loader_id)
Creates a maliput::plugin::RoadNetworkLoader using the specified plugin id.
Definition: create_road_network.cc:38