#ifndef GLOBAL_H
#define GLOBAL_H

#include <vector>
#include <wx/wx.h>
#include "Point.h"

#define MAX_POINTS_ON_GPU 100000 // Downsample the points when the point cloud is manipulated

using namespace std;

const wxString REGISTER3D_VER = wxT("1.1");

struct RGB
{
    unsigned char r, g, b;
};

struct _Global
{
	vector <Point> scan1, scan2;

	int ID_1, ID_2;
	vector <unsigned int> table1, table2; // Allows a reverseable version of random_shuffle()
    wxString pwd;

    // False colour palette
	vector <RGB> false_colour1, false_colour2; // for scan1, scan2
    unsigned char *false_colour_r, *false_colour_g, *false_colour_b;
	float false_colour_min_z, false_colour_max_z;
};

#endif
