ConfigFile.h 1.39 KB
Newer Older
1
2
3
#ifndef __CONFIGFILE_H
#define __CONFIGFILE_H
#include <vector>
4
#include "polyhedron.h"
5
6
7
8
9
10
11
12
13

extern const char * PATH;
extern const char * SCREENSHOT;
extern int ISOS;
extern int TIMESTEPS;
extern float **isocolours; // [ISOS][4];
extern const char **plyfiles;
extern float **translations;
extern float userpos[3];
14
extern float scaling;
15
16
17
18

extern float BACKGROUND[3];
extern int* numAtoms; //[timesteps]
extern float **atoms; //[timesteps][numAtoms[i]*4] //xyzu, u=atom number
19
extern bool fixedAtoms; //all timesteps use the atoms for timestep 0. Used for excitons etc.
20
21
extern float atomScaling;
extern std::vector<float> *clonedAtoms;
22
23
extern std::vector<int> bonds;
extern int *numBonds;
24
extern bool displaybonds;
25
26
27
28
29
30
31
32
33
extern int numClonedAtoms;
extern int *basisvectorreps;

extern bool showTrajectories;
extern std::vector<int> atomtrajectories;
extern std::vector<std::vector<int>> atomtrajectoryrestarts;

extern float abc[3][3]; //basis vectors
extern bool has_abc;
34
35
36
extern bool displayunitcell;
extern float supercell[3];
extern float markerscaling;
37
38
39

extern int repetitions[3];

40
41
extern Solid *solid;

42
43
44
extern bool saveStereo;
extern int screenshotdownscaling;

45
46
47
48
49
50
//markers such as hole positions and electron positions
extern float ** markers;
extern float ** markercolours;
extern float cubetrans[3];
extern int voxelSize[3];

51
52
53
54
55
extern const char * loadConfigFileErrors[];

int loadConfigFile(const char * f);

#endif //__CONFIGFILE_H