summaryrefslogtreecommitdiff
path: root/src/simulation/SaveLoader.h
blob: 4d555926b333ddb6fbe4e92a887f48629547c0fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
 * SaveLoader.h
 *
 *  Created on: Jan 26, 2012
 *      Author: Simon
 */

#ifndef SAVELOADER_H_
#define SAVELOADER_H_

#include "Simulation.h"

class SaveLoader {
public:
	static int Info(unsigned char * data, int dataLength, int & width, int & height);
	static int Load(unsigned char * data, int dataLength, Simulation * sim, bool replace, int x, int y);
	static unsigned char * Build(int & dataLength, Simulation * sim, int orig_x0, int orig_y0, int orig_w, int orig_h);
private:
	static int OPSInfo(unsigned char * data, int dataLength, int & width, int & height);
	static int OPSLoad(unsigned char * data, int dataLength, Simulation * sim, bool replace, int x, int y);
	static unsigned char * OPSBuild(int & dataLength, Simulation * sim, int orig_x0, int orig_y0, int orig_w, int orig_h);
	static int PSVInfo(unsigned char * data, int dataLength, int & width, int & height);
	static int PSVLoad(unsigned char * data, int dataLength, Simulation * sim, bool replace, int x, int y);
	static unsigned char * PSVBuild(int & dataLength, Simulation * sim, int orig_x0, int orig_y0, int orig_w, int orig_h);
};

#endif /* SAVELOADER_H_ */