34 #ifndef EMANEAPPLICATIONNEMBUILDER_HEADER_ 35 #define EMANEAPPLICATIONNEMBUILDER_HEADER_ 51 using NEMLayers = std::list<std::unique_ptr<NEMLayer>>;
52 using NEMs = std::list<std::unique_ptr<NEM>>;
84 std::unique_ptr<NEMLayer>
86 const std::string & sLibraryFile,
88 bool bSkipConfigure =
false);
107 std::unique_ptr<NEMLayer>
109 const std::string & sLibraryFile,
111 bool bSkipConfigure =
false);
130 std::unique_ptr<NEMLayer>
132 const std::string & sLibraryFile,
134 bool bSkipConfigure =
false);
153 std::unique_ptr<NEMLayer>
155 const std::string & sLibraryFile,
157 bool bSkipConfigure =
false);
181 bool bHasExternalTransport);
200 std::unique_ptr<NEMManager>
206 class NEMBuilderImpl;
207 NEMBuilderImpl * pImpl_;
212 #endif // EMANEAPPLICATIONNEMBUILDER_HEADER_ std::list< std::unique_ptr< NEMLayer > > NEMLayers
std::unique_ptr< NEMManager > buildNEMManager(const uuid_t &uuid, NEMs &nems, const ConfigurationUpdateRequest &request)
std::unique_ptr< NEMLayer > buildMACLayer(NEMId id, const std::string &sLibraryFile, const ConfigurationUpdateRequest &request, bool bSkipConfigure=false)
std::unique_ptr< NEMLayer > buildPHYLayer(NEMId id, const std::string &sLibraryFile, const ConfigurationUpdateRequest &request, bool bSkipConfigure=false)
std::unique_ptr< NEM > buildNEM(NEMId id, NEMLayers &layers, const ConfigurationUpdateRequest &request, bool bHasExternalTransport)
std::list< std::unique_ptr< NEM > > NEMs
std::vector< ConfigurationNameStringValues > ConfigurationUpdateRequest
std::unique_ptr< NEMLayer > buildTransportLayer(NEMId id, const std::string &sLibraryFile, const ConfigurationUpdateRequest &request, bool bSkipConfigure=false)
Provides methods for constructing an emulator instance from its constituent parts.
std::unique_ptr< NEMLayer > buildShimLayer(NEMId id, const std::string &sLibraryFile, const ConfigurationUpdateRequest &request, bool bSkipConfigure=false)