WiiFlow_Lite/source/list/cache.hpp
fix94.1 971b5bdb52 -improved jpg support, now the cover width and height dont need
to be divisible with 4 anymore, you can use what you want
-moved sound buffers back in mem2, idk but for wiiflow it gives
a better result
-added mem2 memalign placeholder for new memory manager (after
a week still everything but finished)
-updated other small things, cleaned up source structure a bit
2012-08-05 13:48:15 +00:00

49 lines
991 B
C++

#ifndef CCACHE
#define CCACHE
#include <sys/types.h>
#include <ogcsys.h>
#include <fstream>
#include <vector>
#include "loader/disc.h"
//#include "gecko.h"
using namespace std;
const char io[4][5] = {
"wb",
"rb",
"ab",
"wb",
};
enum CMode
{
SAVE,
LOAD,
ADD,
REMOVE
};
template <typename T>
class CCache
{
public:
CCache(T &tmp, string path, u32 index, CMode mode); /* Load/Save One */
CCache(vector<T> &list, string path, CMode mode); /* Load/Save All */
CCache(vector<T> &list, string path, T tmp, CMode mode); /* Add One */
CCache(vector<T> &list, string path, u32 index, CMode mode); /* Remove One */
~CCache();
private:
void SaveAll(vector<T> list);
void SaveOne(T tmp, u32 index);
void LoadAll(vector<T> &list);
void LoadOne(T &tmp, u32 index);
void AddOne(vector<T> &list, T tmp);
void RemoveOne(vector<T> &list, u32 index);
FILE *cache;
string filename;
};
#endif