2018-01-19 11:17:21 -08:00
|
|
|
#ifndef LC_GLOBAL_H
|
|
|
|
#define LC_GLOBAL_H
|
2018-01-19 09:46:38 -08:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
2013-08-09 04:57:18 +00:00
|
|
|
|
2015-01-31 20:38:53 +00:00
|
|
|
#include <QtGlobal>
|
|
|
|
#include <QWidget>
|
|
|
|
#include <QtOpenGL>
|
|
|
|
#include <QGLWidget>
|
|
|
|
#include <QtGui>
|
2015-02-01 02:33:42 +00:00
|
|
|
#include <QPrinter>
|
2019-05-30 12:06:54 -07:00
|
|
|
#include <map>
|
|
|
|
#include <vector>
|
2018-04-07 18:45:44 -07:00
|
|
|
#include <array>
|
2019-05-26 11:08:47 -07:00
|
|
|
#include <set>
|
2019-05-30 12:06:54 -07:00
|
|
|
#include <functional>
|
2020-12-05 11:19:11 -08:00
|
|
|
#include <memory>
|
2015-01-31 20:38:53 +00:00
|
|
|
|
2018-09-24 11:29:05 -07:00
|
|
|
#ifndef Q_FALLTHROUGH
|
2019-05-30 12:26:10 -07:00
|
|
|
#define Q_FALLTHROUGH();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef QT_STRINGIFY
|
2019-12-09 11:43:54 -08:00
|
|
|
#define QT_STRINGIFY2(x) #x
|
|
|
|
#define QT_STRINGIFY(x) QT_STRINGIFY2(x)
|
2018-09-24 11:29:05 -07:00
|
|
|
#endif
|
|
|
|
|
2019-12-09 11:43:54 -08:00
|
|
|
#define LC_ARRAY_COUNT(x) ((sizeof(x)/sizeof(0[x])) / ((size_t)(!(sizeof(x) % sizeof(0[x])))))
|
2020-12-06 11:26:55 -08:00
|
|
|
#define LC_ARRAY_SIZE_CHECK(a,s) static_assert(LC_ARRAY_COUNT(a) == static_cast<int>(s), QT_STRINGIFY(a) " size mismatch.")
|
2019-12-09 11:43:54 -08:00
|
|
|
|
2017-12-06 22:08:56 -08:00
|
|
|
#if !defined(EGL_VERSION_1_0) && !defined(GL_ES_VERSION_2_0) && !defined(GL_ES_VERSION_3_0) && !defined(QT_OPENGL_ES)
|
2015-05-09 19:54:29 +00:00
|
|
|
#undef GL_LINES_ADJACENCY_EXT
|
|
|
|
#undef GL_LINE_STRIP_ADJACENCY_EXT
|
|
|
|
#undef GL_TRIANGLES_ADJACENCY_EXT
|
|
|
|
#undef GL_TRIANGLE_STRIP_ADJACENCY_EXT
|
|
|
|
#include "lc_glext.h"
|
2017-02-11 09:46:21 -08:00
|
|
|
#else
|
|
|
|
#define LC_OPENGLES 1
|
|
|
|
#endif
|
2015-05-09 19:54:29 +00:00
|
|
|
|
2015-01-31 20:38:53 +00:00
|
|
|
// Old defines and declarations.
|
|
|
|
#define LC_MAXPATH 1024
|
2019-02-28 15:47:09 +01:00
|
|
|
#define LC_MAXNAME 1000
|
2015-01-31 20:38:53 +00:00
|
|
|
|
|
|
|
#ifdef Q_OS_WIN
|
|
|
|
char* strcasestr(const char *s, const char *find);
|
|
|
|
#else
|
|
|
|
char* strupr(char* string);
|
|
|
|
char* strlwr(char* string);
|
|
|
|
#endif
|
2013-08-09 04:57:18 +00:00
|
|
|
|
|
|
|
// Version number.
|
2019-07-14 10:07:54 -07:00
|
|
|
#define LC_VERSION_MAJOR 19
|
|
|
|
#define LC_VERSION_MINOR 07
|
2019-07-14 18:22:57 -07:00
|
|
|
#define LC_VERSION_PATCH 1
|
|
|
|
#define LC_VERSION_TEXT "19.07.1"
|
2013-08-09 04:57:18 +00:00
|
|
|
|
|
|
|
// Forward declarations.
|
2015-02-22 02:39:15 +00:00
|
|
|
class Project;
|
2014-09-02 03:44:51 +00:00
|
|
|
class lcModel;
|
2014-05-01 18:42:11 +00:00
|
|
|
class lcObject;
|
|
|
|
class lcPiece;
|
|
|
|
class lcCamera;
|
|
|
|
class lcLight;
|
2014-05-25 01:45:19 +00:00
|
|
|
class lcGroup;
|
2014-10-10 23:53:08 +00:00
|
|
|
class PieceInfo;
|
2017-04-15 15:54:17 -07:00
|
|
|
typedef std::map<const PieceInfo*, std::map<int, int>> lcPartsList;
|
2014-12-30 16:30:12 +00:00
|
|
|
struct lcModelPartsEntry;
|
2020-12-06 19:33:15 -08:00
|
|
|
struct lcMinifig;
|
2020-12-13 10:33:42 -08:00
|
|
|
enum class lcViewpoint;
|
2014-05-01 18:42:11 +00:00
|
|
|
|
2013-08-09 04:57:18 +00:00
|
|
|
class lcVector2;
|
|
|
|
class lcVector3;
|
|
|
|
class lcVector4;
|
2015-01-10 20:30:37 +00:00
|
|
|
class lcMatrix33;
|
2013-08-09 04:57:18 +00:00
|
|
|
class lcMatrix44;
|
|
|
|
|
2020-12-05 11:19:11 -08:00
|
|
|
class lcGLWidget;
|
2014-04-14 03:20:16 +00:00
|
|
|
class lcContext;
|
2013-08-09 04:57:18 +00:00
|
|
|
class lcMesh;
|
2014-04-14 03:20:16 +00:00
|
|
|
struct lcMeshSection;
|
2014-04-20 01:50:41 +00:00
|
|
|
struct lcRenderMesh;
|
2013-08-09 04:57:18 +00:00
|
|
|
class lcTexture;
|
2015-02-08 18:54:51 +00:00
|
|
|
class lcScene;
|
2019-11-22 16:47:58 -08:00
|
|
|
enum class lcRenderMeshState : int;
|
2013-08-09 04:57:18 +00:00
|
|
|
|
|
|
|
class lcFile;
|
|
|
|
class lcMemFile;
|
|
|
|
class lcDiskFile;
|
|
|
|
|
2018-01-19 09:46:38 -08:00
|
|
|
#endif
|
2018-01-19 11:17:21 -08:00
|
|
|
|
|
|
|
#endif // LC_GLOBAL_H
|