virtual sclint log(const sclchar *msg) = 0;
};
-class EXAPI CSCLUtilsImplLinux : public CSCLUtilsImpl
+class CSCLUtilsImplLinux : public CSCLUtilsImpl
{
public :
void init();
class _CSCLUtils
{
public :
- _CSCLUtils() {
- m_impl = 0;
- }
-
- virtual void init() {
- CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
- if (impl) {
- impl->init();
- }
- }
- virtual void fini() {
- CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
- if (impl) {
- impl->fini();
- }
- }
-
- virtual sclboolean get_screen_resolution(sclint *x, sclint *y) {
- sclboolean ret = FALSE;
- CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
- if (impl) {
- ret = impl->get_screen_resolution(x, y);
- }
- return ret;
- }
- virtual sclboolean play_tts(const sclchar *str) {
- sclboolean ret = FALSE;
- CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
- if (impl) {
- ret = impl->play_tts(str);
- }
- return ret;
- }
- virtual sclboolean play_sound(const sclchar* snd_style) {
- sclboolean ret = FALSE;
- CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
- if (impl) {
- ret = impl->play_sound(snd_style);
- }
- return ret;
- }
- virtual sclboolean play_vibration(const sclchar* vibe_style, const scllong duration) {
- sclboolean ret = FALSE;
- CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
- if (impl) {
- ret = impl->play_vibration(vibe_style, duration);
- }
- return ret;
- }
-
+ _CSCLUtils();
+
+ virtual void init();
+ virtual void fini();
+ virtual sclboolean get_screen_resolution(sclint *x, sclint *y);
+ virtual sclboolean play_tts(const sclchar *str);
+ virtual sclboolean play_sound(const sclchar* snd_style);
+ virtual sclboolean play_vibration(const sclchar* vibe_style, const scllong duration);
protected :
- CSCLUtilsImpl* GetCSCLUtilsImpl() {
- if (m_impl == 0) {
-#ifdef __WIN32__
- m_impl = new CSCLUtilsImplWin32;
-#else
- m_impl = new CSCLUtilsImplLinux;
-#endif
- }
- return m_impl;
- }
+ CSCLUtilsImpl* GetCSCLUtilsImpl();
private :
CSCLUtilsImpl* m_impl;
return ret;
}
+
+_CSCLUtils::_CSCLUtils()
+{
+ m_impl = 0;
+}
+
+void _CSCLUtils::init()
+{
+ CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
+ if (impl) {
+ impl->init();
+ }
+}
+
+void _CSCLUtils::fini()
+{
+ CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
+ if (impl) {
+ impl->fini();
+ }
+}
+
+sclboolean _CSCLUtils::get_screen_resolution(sclint *x, sclint *y)
+{
+ sclboolean ret = FALSE;
+ CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
+ if (impl) {
+ ret = impl->get_screen_resolution(x, y);
+ }
+ return ret;
+}
+
+sclboolean _CSCLUtils::play_tts(const sclchar *str)
+{
+ sclboolean ret = FALSE;
+ CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
+ if (impl) {
+ ret = impl->play_tts(str);
+ }
+ return ret;
+}
+
+sclboolean _CSCLUtils::play_sound(const sclchar* snd_style)
+{
+ sclboolean ret = FALSE;
+ CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
+ if (impl) {
+ ret = impl->play_sound(snd_style);
+ }
+ return ret;
+}
+
+sclboolean _CSCLUtils::play_vibration(const sclchar* vibe_style, const scllong duration)
+{
+ sclboolean ret = FALSE;
+ CSCLUtilsImpl *impl = GetCSCLUtilsImpl();
+ if (impl) {
+ ret = impl->play_vibration(vibe_style, duration);
+ }
+ return ret;
+}
+
+CSCLUtilsImpl* _CSCLUtils::GetCSCLUtilsImpl()
+{
+ if (m_impl == 0) {
+#ifdef __WIN32__
+ m_impl = new CSCLUtilsImplWin32;
+#else
+ m_impl = new CSCLUtilsImplLinux;
+#endif
+ }
+ return m_impl;
+}