OSDN Git Service

[FILEIO] Add StateVector() classes.
authorK.Ohta <whatisthis.sowhat@gmail.com>
Tue, 23 Apr 2019 14:41:08 +0000 (23:41 +0900)
committerK.Ohta <whatisthis.sowhat@gmail.com>
Tue, 23 Apr 2019 14:41:08 +0000 (23:41 +0900)
source/src/fileio.cpp
source/src/fileio.h
source/src/qt/emuutils/CMakeLists.txt

index 76e4bba..ea6775b 100644 (file)
@@ -1159,6 +1159,138 @@ void FILEIO::StateValueScrnType_t(scrntype_t &val)
 }
 
 
+void FILEIO::StateVector(std::vector<int8_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<int16_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<int32_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<int64_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<uint8_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<uint16_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<uint32_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<uint64_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<bool> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               if(open_mode == FILEIO_READ_BINARY) {
+                       datas[i] = FgetBool();
+               } else {
+                       FputBool(datas[i]);
+               }
+       }
+}
+
+void FILEIO::StateVector(std::vector<float> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<double> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<_TCHAR> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<pair16_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<pair32_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<pair64_t> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
+void FILEIO::StateVector(std::vector<int> datas)
+{
+       int memb = datas.size();
+       for(int i = 0; i < memb; i++) {
+               StateValue(datas[i]);
+       }
+}
+
 void FILEIO::StateArray(bool *buffer, size_t size, size_t count)
 {
        for(unsigned int i = 0; i < size / sizeof(buffer[0]) * count; i++) {
index 0d7012c..3595d42 100644 (file)
@@ -11,6 +11,7 @@
 #define _FILEIO_H_
 
 #include <stdio.h>
+#include <vector>
 #include "common.h"
 
 #define FILEIO_READ_BINARY             1
@@ -186,6 +187,23 @@ public:
        void StateArray(_TCHAR *buffer, size_t size, size_t count);
        void StateArrayScrnType_t(scrntype_t *buffer, size_t size, size_t count);
        
+       void StateVector(std::vector<int8_t> datas);
+       void StateVector(std::vector<int16_t> datas);
+       void StateVector(std::vector<int32_t> datas);
+       void StateVector(std::vector<int64_t> datas);
+       void StateVector(std::vector<uint8_t> datas);
+       void StateVector(std::vector<uint16_t> datas);
+       void StateVector(std::vector<uint32_t> datas);
+       void StateVector(std::vector<uint64_t> datas);
+       void StateVector(std::vector<bool> datas);
+       void StateVector(std::vector<float> datas);
+       void StateVector(std::vector<double> datas);
+       void StateVector(std::vector<pair16_t> datas);
+       void StateVector(std::vector<pair32_t> datas);
+       void StateVector(std::vector<pair64_t> datas);
+       void StateVector(std::vector<_TCHAR> datas);
+       void StateVector(std::vector<int> datas);
+
        // obsolete function
        void StateBuffer(void *buffer, size_t size, size_t count);
 };
index 7c2dac0..e9ab429 100644 (file)
@@ -1,6 +1,6 @@
 message("* qt/emuutils")
 
-SET(THIS_LIB_VERSION 2.16.0)
+SET(THIS_LIB_VERSION 2.16.1)
 
 set(s_qt_emuutils_headers
        ../gui/csp_logger.h