Successful compilation & running

- temporarily mocked CSoundInterface and CPluginInterface
- added CRobotMain to application
- successfully compiles & runs, but doesn't display correctly at the
  moment
dev-ui colobot-dev-1st_compile
Piotr Dziwinski 2012-09-15 22:19:32 +02:00
parent 2847aad51f
commit af9af56bb0
6 changed files with 49 additions and 48 deletions

View File

@ -174,7 +174,7 @@ ui/map.cpp
ui/scroll.cpp
ui/shortcut.cpp
ui/slider.cpp
# ui/studio.cpp
ui/studio.cpp
ui/target.cpp
ui/window.cpp
)

View File

@ -24,6 +24,7 @@
#include "common/iman.h"
#include "common/image.h"
#include "graphics/opengl/gldevice.h"
#include "object/robotmain.h"
#include <SDL/SDL.h>
@ -290,11 +291,8 @@ bool CApplication::Create()
// Temporarily -- only in windowed mode
m_deviceConfig.fullScreen = false;
/* // Create the sound instance.
m_sound = new CSound(m_iMan);
// Create the robot application.
m_robotMain = new CRobotMain(m_iMan); */
// Create the sound instance.
m_sound = new CSoundInterface();
std::string standardInfoMessage =
@ -370,6 +368,9 @@ bool CApplication::Create()
return false;
}
// Create the robot application.
m_robotMain = new CRobotMain(m_iMan, this);
GetLogger()->Info("CApplication created successfully\n");
return true;
@ -430,7 +431,7 @@ bool CApplication::CreateVideoSurface()
void CApplication::Destroy()
{
/*if (m_robotMain != nullptr)
if (m_robotMain != nullptr)
{
delete m_robotMain;
m_robotMain = nullptr;
@ -440,7 +441,7 @@ void CApplication::Destroy()
{
delete m_sound;
m_sound = nullptr;
}*/
}
if (m_engine != nullptr)
{
@ -719,8 +720,8 @@ int CApplication::Run()
passOn = m_engine->ProcessEvent(event);
}
/*if (passOn && m_robotMain != nullptr)
m_robotMain->ProcessEvent(event); */
if (passOn && m_robotMain != nullptr)
m_robotMain->EventProcess(event);
}
/* Update mouse position explicitly right before rendering
@ -1035,7 +1036,7 @@ void CApplication::StepSimulation()
m_engine->FrameUpdate();
//m_sound->FrameMove(m_relTime);
m_sound->FrameMove(m_relTime);
Event frameEvent(EVENT_FRAME);

View File

@ -35,7 +35,7 @@
class CInstanceManager;
class CEvent;
class CRobotMain;
class CSound;
class CSoundInterface;
/**
* \struct JoystickDevice
@ -366,7 +366,7 @@ protected:
//! Graphics device
Gfx::CDevice* m_device;
//! Sound subsystem
CSound* m_sound;
CSoundInterface* m_sound;
//! Main class of the proper game engine
CRobotMain* m_robotMain;

View File

@ -43,7 +43,7 @@ enum ResType
// TODO: move to CRobotMain
extern void SetGlobalGamerName(char *name);
extern bool SearchKey(char *cmd, KeyRank &key);
extern bool SearchKey(const char *cmd, KeyRank &key);
extern bool GetResource(ResType type, int num, char* text);
extern const char * const strings_text[];

View File

@ -47,19 +47,19 @@ class CPluginInterface {
/** Function to get plugin name or description
* @return returns plugin name
*/
virtual std::string PluginName() = 0;
inline std::string PluginName() { return "abc"; };
/** Function to get plugin version. 1 means version 0.01, 2 means 0.02 etc.
* @return number indicating plugin version
*/
virtual int PluginVersion() = 0;
inline int PluginVersion() { return 0; };
/** Function to initialize plugin
*/
virtual void InstallPlugin() = 0;
inline void InstallPlugin() {};
/** Function called before removing plugin
*/
virtual bool UninstallPlugin(std::string &) = 0;
inline bool UninstallPlugin(std::string &) { return true; };
};

View File

@ -44,7 +44,7 @@
**/
enum Sound
{
SOUND_CLICK = 0,
SOUND_CLICK = 0,
SOUND_BOUM = 1,
SOUND_EXPLO = 2,
SOUND_FLYh = 3, /*!< human */
@ -151,21 +151,21 @@ enum SoundNext
class CSoundInterface : public CPluginInterface
{
public:
CSoundInterface() {
inline CSoundInterface() {
//CInstanceManager::getInstance().AddInstance(CLASS_SOUND, this);
//m_iMan->AddInstance(CLASS_SOUND, this);
};
virtual ~CSoundInterface() = 0;
inline ~CSoundInterface() {};
/** Function to initialize sound device
* @param bool b3D - enable support for 3D sound
*/
virtual bool Create(bool b3D) = 0;
inline bool Create(bool b3D) { return true; };
/** Function called to cache all sound effect files.
* Function calls \link CSoundInterface::Cache() \endlink for each file
*/
virtual void CacheAll() = 0;
inline void CacheAll() {};
/** Function called to cache sound effect file.
* This function is called by plugin interface for each file.
@ -173,58 +173,58 @@ class CSoundInterface : public CPluginInterface
* @param std::string bFile - file to load
* @return return true on success
*/
virtual bool Cache(Sound bSound, std::string bFile) = 0;
inline bool Cache(Sound bSound, std::string bFile) { return true; };
/** Geturn if plugin is enabled
* @return return true if plugin is enabled
*/
virtual bool GetEnable() = 0;
inline bool GetEnable() {return true;};
/** Change sound mode to 2D/3D
* @param bool bMode - true to enable 3D sound
*/
virtual void SetSound3D(bool bMode) = 0;
inline void SetSound3D(bool bMode) {};
/** Geturn if we use 3D sound
* @return true if we have 3D sound enabled
*/
virtual bool GetSound3D() = 0;
inline bool GetSound3D() {return true;};
/** Geturn if we have 3D sound capable card
* @return true for 3D sound support
*/
virtual bool GetSound3DCap() = 0;
inline bool GetSound3DCap() {return true;};
/** Change global sound volume
* @param int volume - range from 0 to MAXVOLUME
*/
virtual void SetAudioVolume(int volume) = 0;
inline void SetAudioVolume(int volume) {};
/** Geturn global sound volume
* @return global volume as int in range from 0 to MAXVOLUME
*/
virtual int GetAudioVolume() = 0;
inline int GetAudioVolume() {return 0;};
/** Set music volume
* @param int volume - range from 0 to MAXVOLUME
*/
virtual void SetMusicVolume(int volume) = 0;
inline void SetMusicVolume(int volume) {};
/** Geturn music volume
* @return music volume as int in range from 0 to MAXVOLUME
*/
virtual int GetMusicVolume() = 0;
inline int GetMusicVolume() {return 0;};
/** Set listener position
* @param Math::Vector eye - position of listener
* @param Math::Vector lookat - direction listener is looking at
*/
virtual void SetListener(Math::Vector eye, Math::Vector lookat) = 0;
inline void SetListener(Math::Vector eye, Math::Vector lookat) {};
/** Update data each frame
* @param float rTime - time since last update
*/
virtual void FrameMove(float rTime) = 0;
inline void FrameMove(float rTime) {};
/** Play specific sound
* @param Sound sound - sound to play
@ -233,7 +233,7 @@ class CSoundInterface : public CPluginInterface
* @param bool bLoop - loop sound
* @return identifier of channel that sound will be played on
*/
virtual int Play(Sound sound, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) = 0;
inline int Play(Sound sound, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) {return 0;};
/** Play specific sound
* @param Sound sound - sound to play
@ -243,13 +243,13 @@ class CSoundInterface : public CPluginInterface
* @param bool bLoop - loop sound
* @return identifier of channel that sound will be played on
*/
virtual int Play(Sound sound, Math::Vector pos, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) = 0;
inline int Play(Sound sound, Math::Vector pos, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) {return 0;};
/** Remove all operations that would be made on sound in channel.
* @param int channel - channel to work on
* @return return true on success
*/
virtual bool FlushEnvelope(int channel) = 0;
inline bool FlushEnvelope(int channel) {return true;};
/** Add envelope to sound. Envelope is a operatino that will be performend on sound in future like changing frequency
* @param int channel - channel to work on
@ -259,64 +259,64 @@ class CSoundInterface : public CPluginInterface
* @param SoundNext oper - operation to perform
* @return return true on success
*/
virtual bool AddEnvelope(int channel, float amplitude, float frequency, float time, SoundNext oper) = 0;
inline bool AddEnvelope(int channel, float amplitude, float frequency, float time, SoundNext oper) {return true;};
/** Set sound position in space
* @param int channel - channel to work on
* @param Math::Vector pos - new positino of a sound
* @return return true on success
*/
virtual bool Position(int channel, Math::Vector pos) = 0;
inline bool Position(int channel, Math::Vector pos) {return true;};
/** Set sound frequency
* @param int channel - channel to work on
* @param float frequency - change sound frequency
* @return return true on success
*/
virtual bool Frequency(int channel, float frequency) = 0;
inline bool Frequency(int channel, float frequency) {return true;};
/** Stop playing sound
* @param int channel - channel to work on
* @return return true on success
*/
virtual bool Stop(int channel) = 0;
inline bool Stop(int channel) {return true;};
/** Stop playing all sounds
* @return return true on success
*/
virtual bool StopAll() = 0;
inline bool StopAll() {return true;};
/** Mute/unmute all sounds
* @param bool bMute
* @return return true on success
*/
virtual bool MuteAll(bool bMute) = 0;
inline bool MuteAll(bool bMute) {return true;};
/** Start playing music
* @param int rank - track number
* @param bool bRepeat - repeat playing
* @return return true on success
*/
virtual bool PlayMusic(int rank, bool bRepeat) = 0;
inline bool PlayMusic(int rank, bool bRepeat) {return true;};
/** Restart music
* @return return true on success
*/
virtual bool RestartMusic() = 0;
inline bool RestartMusic() {return true;};
/** Susspend paying music
* @return return true on success
*/
virtual void SuspendMusic() = 0;
inline void SuspendMusic() {};
/** Stop playing music
* @return return true on success
*/
virtual void StopMusic() = 0;
inline void StopMusic() {};
/** Check if music if playing
* @return return true if music is playing
*/
virtual bool IsPlayingMusic() = 0;
inline bool IsPlayingMusic() {return true;};
};