65 lines
1.8 KiB
C++
65 lines
1.8 KiB
C++
#pragma once
|
|
|
|
#include <string>
|
|
#include <cstdio>
|
|
#include <vector>
|
|
#include <switch.h>
|
|
#include <dirent.h>
|
|
#include <minizip/zip.h>
|
|
#include <minizip/unzip.h>
|
|
|
|
#include "fs.h"
|
|
#include "data.h"
|
|
|
|
namespace fs
|
|
{
|
|
//Copy args are optional and only used if passed and threaded
|
|
void copyFile(const std::string& src, const std::string& dst, threadInfo *t);
|
|
void copyFileThreaded(const std::string& src, const std::string& dst);
|
|
void copyFileCommit(const std::string& src, const std::string& dst, const std::string& dev, threadInfo *t);
|
|
void copyFileCommitThreaded(const std::string& src, const std::string& dst, const std::string& dev);
|
|
void fileDrawFunc(void *a);
|
|
|
|
//deletes file
|
|
void delfile(const std::string& _p);
|
|
|
|
//Dumps all titles for current user
|
|
void dumpAllUserSaves();
|
|
|
|
void getShowFileProps(const std::string& _path);
|
|
void getShowDirProps(const std::string& _path);
|
|
|
|
bool fileExists(const std::string& _path);
|
|
//Returns file size
|
|
size_t fsize(const std::string& _f);
|
|
|
|
class dataFile
|
|
{
|
|
public:
|
|
dataFile(const std::string& _path);
|
|
~dataFile();
|
|
void close(){ fclose(f); }
|
|
|
|
bool isOpen() const { return opened; }
|
|
|
|
bool readNextLine(bool proc);
|
|
//Finds where variable name ends. When a '(' or '=' is hit. Strips spaces
|
|
void procLine();
|
|
std::string getLine() const { return line; }
|
|
std::string getName() const { return name; }
|
|
//Reads until ';', ',', or '\n' is hit and returns as string.
|
|
std::string getNextValueStr();
|
|
int getNextValueInt();
|
|
|
|
private:
|
|
FILE *f;
|
|
std::string line, name;
|
|
size_t lPos = 0;
|
|
bool opened = false;
|
|
};
|
|
|
|
void logOpen();
|
|
void logWrite(const char *fmt, ...);
|
|
void logClose();
|
|
}
|