51 std::unique_ptr<EMANE::Application::EventGeneratorManager>
56 if(generators.empty())
58 throw BuildException(
"Trying to build an EventGeneratorManager without any EventGenerators");
67 pManager->initialize(registrarProxy);
71 std::for_each(generators.begin(),
73 [&pManager](std::unique_ptr<EventGenerator> & pGenerator)
75 pManager->add(pGenerator);
82 std::unique_ptr<EMANE::EventGenerator>
87 std::string sNativeLibraryFile =
"lib" +
99 std::unique_ptr<EMANE::EventGenerator>
105 pPlatformService->setPlatformServiceUser(buildId,pGenerator.get());
120 pGenerator->initialize(registrarProxy);
Factory for creating EventGenerators. The factory manages the DLL allowing for the creation of multip...
std::unique_ptr< EventGeneratorManager > buildEventGeneratorManager(const uuid_t &uuid, EventGenerators &generators, const ConfigurationUpdateRequest &request)
std::list< std::unique_ptr< EventGenerator > > EventGenerators
Exception thrown by builders when constructing and assembling application objects and containers...
BuildId registerBuildable(Application::NEMManager *pNEMManager)
std::unique_ptr< EventGenerator > buildEventGenerator(const std::string &sLibraryFile, const ConfigurationUpdateRequest &request, bool bSkipConfigure=false)
std::vector< ConfigurationNameStringValues > ConfigurationUpdateRequest
EventGenerator * createEventGenerator(PlatformServiceProvider *pPlatformService) const
void registerEventServiceUser(BuildId buildId, EventServiceUser *pEventServiceUser, NEMId=0)
const EventGeneratorFactory & getEventGeneratorFactory(const std::string &sLibraryFile)
static BuildIdService * instance()