OSDN Git Service

[Build][Win32] Separate GUI(and fmgen and emuutils) to separate DLLs.
[csp-qt/common_source_project-fm7.git] / source / src / qt / osd_base.h
index b6a3588..8ae6fe6 100644 (file)
@@ -64,7 +64,7 @@ class VM;
 class FIFO;
 class CSP_KeyTables;
 class USING_FLAGS;
-
+class CSP_LOGGER;
 QT_BEGIN_NAMESPACE
 
 typedef struct {
@@ -82,6 +82,7 @@ protected:
        sdl_snddata_t snddata;
        USING_FLAGS *using_flags;
        config_t *p_config;
+       CSP_Logger *csp_logger;
        
        _TCHAR app_path[_MAX_PATH];
        QElapsedTimer osd_timer;
@@ -216,15 +217,12 @@ protected:
        bool prn_strobe;
 
        // socket
-       void initialize_socket();
-       void release_socket();
+       virtual void initialize_socket();
+       virtual void release_socket();
        
-       int soc[SOCKET_MAX];
        bool is_tcp[SOCKET_MAX];
-       //struct sockaddr_in udpaddr[SOCKET_MAX];
+       bool host_mode[SOCKET_MAX];
        int socket_delay[SOCKET_MAX];
-       char recv_buffer[SOCKET_MAX][SOCKET_BUFFER_MAX];
-       int recv_r_ptr[SOCKET_MAX], recv_w_ptr[SOCKET_MAX];
 
        // wrapper
        int max_vm_nodes;
@@ -251,8 +249,11 @@ protected:
        virtual int get_screen_width(void);
        virtual int get_screen_height(void);
        virtual int get_vm_buttons_code(int num);
+
+       virtual void init_sound_files();
+       virtual void release_sound_files();
 public:
-       OSD_BASE(USING_FLAGS *p);
+       OSD_BASE(USING_FLAGS *p, CSP_Logger *logger);
        ~OSD_BASE();
        
        // common
@@ -351,6 +352,9 @@ public:
        void restart_record_sound();
        bool now_record_sound;
        int get_sound_rate();
+       // Wrapper : Sound
+       virtual void load_sound_file(int id, const _TCHAR *name, int16_t **data, int *dst_size);
+       virtual void free_sound_file(int id, int16_t **data);
        
        // common video device
        virtual void get_video_buffer();
@@ -395,19 +399,19 @@ public:
        void write_bitmap_to_file(bitmap_t *bitmap, const _TCHAR *file_path);
 
        // common socket
-       int get_socket(int ch);
-       void notify_socket_connected(int ch);
-       void notify_socket_disconnected(int ch);
-       void update_socket();
-       bool initialize_socket_tcp(int ch);
-       bool initialize_socket_udp(int ch);
-       bool connect_socket(int ch, uint32_t ipaddr, int port);
-       void disconnect_socket(int ch);
-       bool listen_socket(int ch);
-       void send_socket_data_tcp(int ch);
-       void send_socket_data_udp(int ch, uint32_t ipaddr, int port);
-       void send_socket_data(int ch);
-       void recv_socket_data(int ch);
+       virtual int get_socket(int ch);
+       virtual void notify_socket_connected(int ch);
+       virtual void notify_socket_disconnected(int ch);
+       virtual void update_socket();
+       virtual bool initialize_socket_tcp(int ch);
+       virtual bool initialize_socket_udp(int ch);
+       virtual bool connect_socket(int ch, uint32_t ipaddr, int port);
+       virtual void disconnect_socket(int ch);
+       virtual bool listen_socket(int ch);
+       virtual void send_socket_data_tcp(int ch);
+       virtual void send_socket_data_udp(int ch, uint32_t ipaddr, int port);
+       virtual void send_socket_data(int ch);
+       virtual void recv_socket_data(int ch);
 
        // win32 dependent
        void update_screen();
@@ -429,7 +433,7 @@ public:
        virtual void set_vm_node(int id, const _TCHAR *name);
        virtual const _TCHAR *get_vm_node_name(int id);
        virtual int get_vm_node_size(void);
-       
+
 public slots:
        void do_write_inputdata(QString s);
        void do_set_input_string(QString s);
@@ -465,6 +469,8 @@ signals:
        int sig_movie_seek_frame(bool, int);
 
        int sig_update_device_node_name(int id, const _TCHAR *name);
+       int sig_enable_mouse(void);
+       int sig_disable_mouse(void);
 };
 QT_END_NAMESPACE