Updating the changelog in the VERSION file, and version_sync.
[shapes.git] / source / consts.h
blob057f7880539a9067c3f650521fca2f70e7f60500
1 /* This file is part of Shapes.
3 * Shapes is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 3 of the License, or
6 * any later version.
8 * Shapes is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with Shapes. If not, see <http://www.gnu.org/licenses/>.
16 * Copyright 2008 Henrik Tidefelt
19 #pragma once
21 #include <cmath>
23 #include "elementarylength.h"
25 #include "refcount.h"
26 #include <cstddef> // For size_t.
30 namespace Shapes
32 namespace Interaction
35 extern RefCountPtr< const char > SEVERAL_TYPES;
36 extern RefCountPtr< const char > PUBLIC_SCOPE_NAME;
37 extern RefCountPtr< const char > PROTECTED_SCOPE_NAME;
39 extern const char * DYNAMIC_VARIABLE_PREFIX;
40 extern const char * STATE_PREFIX;
44 namespace Lang
47 extern RefCountPtr< const char > ARCDELTA_ID;
48 extern RefCountPtr< const char > TEX_SYNTAX_ID;
50 extern const char * CANVAS_ID;
51 extern const char * CATALOG_ID;
53 extern const char * SELF_ID;
55 extern const char * MESSAGE_DRAWABLE_DRAW_ID;
57 extern const char * HANDLER_NO_INTERSECTION;
59 extern const char * DYNAMIC_VARIABLE_ID_EYEZ;
60 extern const char * DYNAMIC_VARIABLE_ID_TEX_BLEED;
61 extern const char * DYNAMIC_VARIABLE_ID_DEFAULT_UNIT;
62 extern const char * DYNAMIC_VARIABLE_ID_BLEND_SPACE;
63 extern const char * DYNAMIC_VARIABLE_ID_STROKING;
64 extern const char * DYNAMIC_VARIABLE_ID_WIDTH;
65 extern const char * DYNAMIC_VARIABLE_ID_NONSTROKING;
66 extern const char * DYNAMIC_VARIABLE_ID_AUTOINTENSITY;
68 extern const char * DYNAMIC_VARIABLE_ID_TEXT_SIZE;
69 extern const char * DYNAMIC_VARIABLE_ID_TEXT_FONT;
71 extern const char * CONTINUATION_ID_ERROR;
74 namespace Kernel
77 extern const char * SEQUENTIAL_EXPR_VAR_ID;
78 extern const char * SPLIT_VAR_PREFIX;
82 namespace Computation
85 extern const size_t RREL_SIZE;
86 extern const double RREL_TH_STEP;
87 extern const double RREL_TABLE[];
89 extern const double SINGULAR_TRANSFORM_LIMIT;
93 namespace Ast
96 typedef unsigned short int MemberMode;
97 extern const MemberMode MEMBER_ACCESS_BITS;
98 extern const MemberMode MEMBER_ACCESS_PRIVATE;
99 extern const MemberMode MEMBER_ACCESS_PUBLIC_GET;
100 extern const MemberMode MEMBER_ACCESS_PUBLIC_INSERT;
101 extern const MemberMode MEMBER_ACCESS_PROTECTED_GET;
102 extern const MemberMode MEMBER_ACCESS_PROTECTED_INSERT;
103 extern const MemberMode MEMBER_CONST;
104 extern const MemberMode MEMBER_METHOD;
105 extern const MemberMode MEMBER_ABSTRACT;
106 extern const MemberMode MEMBER_FINAL;
107 extern const MemberMode MEMBER_TRANSFORMING;
109 typedef unsigned short int ClassMode;
110 extern const ClassMode CLASS_MODE_ABSTRACT;
111 extern const ClassMode CLASS_MODE_FINAL;
113 typedef unsigned short int FunctionMode;
114 extern const FunctionMode FUNCTION_TRANSFORMING;
118 namespace Concrete
121 const Length HUGE_LENGTH( HUGE_VAL );
122 const Length ZERO_LENGTH( 0 );
123 const Length SOME_LENGTH( 1 );
125 const Speed ZERO_SPEED( 0 );
127 const Time ZERO_TIME( 0 );
128 const Time UNIT_TIME( 1 );
129 const Time HUGE_TIME( HUGE_VAL );
133 namespace BuiltInFonts
136 extern RefCountPtr< const char > TIMES_ROMAN;
137 extern RefCountPtr< const char > TIMES_BOLD;
138 extern RefCountPtr< const char > TIMES_ITALIC;
139 extern RefCountPtr< const char > TIMES_BOLDITALIC;
140 extern RefCountPtr< const char > HELVETICA;
141 extern RefCountPtr< const char > HELVETICA_BOLD;
142 extern RefCountPtr< const char > HELVETICA_OBLIQUE;
143 extern RefCountPtr< const char > HELVETICA_BOLDOBLIQUE;
144 extern RefCountPtr< const char > COURIER;
145 extern RefCountPtr< const char > COURIER_BOLD;
146 extern RefCountPtr< const char > COURIER_OBLIQUE;
147 extern RefCountPtr< const char > COURIER_BOLDOBLIQUE;
148 extern RefCountPtr< const char > SYMBOL;
149 extern RefCountPtr< const char > ZAPFDINGBATS;
150 extern RefCountPtr< const char > NUM_BUILTIN_FONTS;