//===========================================================================// // File: rp4lbe4.hh // // Project: MUNGA Brick: Red Planet LBE Application // // Contents: // //---------------------------------------------------------------------------// // Date Who Modification // // -------- --- ---------------------------------------------------------- // // // //---------------------------------------------------------------------------// // Copyright (C) 1994, Virtual World Entertainment, Inc. // // All Rights reserved worldwide // // This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL // //===========================================================================// #if !defined(BTL4APP_HPP) # define BTL4APP_HPP # if !defined(BTL4MPPR_HPP) # include # endif //########################################################################## //###################### BTL4Application ########################## //########################################################################## //########################################################################## //###################### RP4L4Application ############################ //########################################################################## class BTL4Application: public L4Application { public: BTL4Application( ResourceFile *resource_file, ClassID class_ID=L4ApplicationClassID, SharedData &shared_data=DefaultData ); ~BTL4Application(); static Derivation ClassDerivations; static SharedData DefaultData; private: Registry* MakeRegistry(); VideoRenderer* MakeVideoRenderer(); AudioRenderer* MakeAudioRenderer(); GaugeRenderer* MakeGaugeRenderer(); ModeManager* MakeModeManager(); ControlsManager* MakeControlsManager(); Mission* MakeMission( NotationFile *notation_file, ResourceFile *resources ); Entity* MakeViewpointEntity(Entity::MakeMessage *); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Message Support // private: static const HandlerEntry MessageHandlerEntries[]; protected: static MessageHandlerSet MessageHandlers; void RunMissionMessageHandler(RunMissionMessage *message); void StopMissionMessageHandler(StopMissionMessage *message); }; #endif