Example #1
0
// DarkRadiant module entry point
extern "C" void DARKRADIANT_DLLEXPORT RegisterModule(IModuleRegistry& registry) {

	pico_initialise();

	const picoModule_t** modules = PicoModuleList( 0 );

	while (*modules != 0) {
		const picoModule_t* module = *modules++;

		if (module->canload && module->load)	{
			for (char*const* ext = module->defaultExts; *ext != 0; ++ext) {
				// greebo: File extension is expected to be UPPERCASE
				std::string extension(*ext);
				boost::algorithm::to_upper(extension);

				registry.registerModule(
					model::PicoModelLoaderPtr(new model::PicoModelLoader(module, extension))
				);
			}
		}
	}

	// Initialise the streams using the given application context
	module::initialiseStreams(registry.getApplicationContext());

	// Remember the reference to the ModuleRegistry
	module::RegistryReference::Instance().setRegistry(registry);

	// Set up the assertion handler
	GlobalErrorHandler() = registry.getApplicationContext().getErrorHandlingFunction();
}
Example #2
0
void ModelModules_Init (void)
{
	pico_initialise();
	const picoModule_t** modules = PicoModuleList(0);
	while (*modules != 0) {
		const picoModule_t* module = *modules++;
		if (module->canload && module->load) {
			for (const char* const* ext = module->defaultExts; *ext != 0; ++ext) {
				PicoModelModule *picomodule = new PicoModelModule(PicoModelAPIConstructor(*ext, module));
				StaticModuleRegistryList().instance().addModule(*picomodule);
				/** @todo do we have to delete these PicoModelModules anywhere? */
			}
		}
	}
}
Example #3
0
extern "C" void RADIANT_DLLEXPORT Radiant_RegisterModules( ModuleServer& server ){
	initialiseModule( server );

	pico_initialise();

	const picoModule_t** modules = PicoModuleList( 0 );
	while ( *modules != 0 )
	{
		const picoModule_t* module = *modules++;
		if ( module->canload && module->load ) {
			for ( char*const* ext = module->defaultExts; *ext != 0; ++ext )
			{
				g_PicoModelModules.push_back( PicoModelModule( PicoModelAPIConstructor( *ext, module ) ) );
				g_PicoModelModules.back().selfRegister();
			}
		}
	}
}
Example #4
0
extern "C" void RADIANT_DLLEXPORT Radiant_RegisterModules(ModuleServer& server)
{
  GlobalErrorStream::instance().setOutputStream(server.getErrorStream());
  GlobalOutputStream::instance().setOutputStream(server.getOutputStream());
  GlobalDebugMessageHandler::instance().setHandler(server.getDebugMessageHandler());
  GlobalModuleServer::instance().set(server);

  pico_initialise();

  const picoModule_t** modules = PicoModuleList( 0 );
  while(*modules != 0)
  {
    const picoModule_t* module = *modules++;
    if(module->canload && module->load)
    {
      for(char*const* ext = module->defaultExts; *ext != 0; ++ext)
      {
        g_PicoModelModules.push_back(PicoModelModule(PicoModelAPIConstructor(*ext, module)));
        g_PicoModelModules.back().selfRegister();
      }
    }
  }
}