This repository was archived by the owner on May 18, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 61
Expand file tree
/
Copy pathGlobal.mo
More file actions
99 lines (88 loc) · 3.36 KB
/
Global.mo
File metadata and controls
99 lines (88 loc) · 3.36 KB
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/*
* This file is part of OpenModelica.
*
* Copyright (c) 1998-2014, Open Source Modelica Consortium (OSMC),
* c/o Linköpings universitet, Department of Computer and Information Science,
* SE-58183 Linköping, Sweden.
*
* All rights reserved.
*
* THIS PROGRAM IS PROVIDED UNDER THE TERMS OF GPL VERSION 3 LICENSE OR
* THIS OSMC PUBLIC LICENSE (OSMC-PL) VERSION 1.2.
* ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS PROGRAM CONSTITUTES
* RECIPIENT'S ACCEPTANCE OF THE OSMC PUBLIC LICENSE OR THE GPL VERSION 3,
* ACCORDING TO RECIPIENTS CHOICE.
*
* The OpenModelica software and the Open Source Modelica
* Consortium (OSMC) Public License (OSMC-PL) are obtained
* from OSMC, either from the above address,
* from the URLs: http://www.ida.liu.se/projects/OpenModelica or
* http://www.openmodelica.org, and in the OpenModelica distribution.
* GNU version 3 is obtained from: http://www.gnu.org/copyleft/gpl.html.
*
* This program is distributed WITHOUT ANY WARRANTY; without
* even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE, EXCEPT AS EXPRESSLY SET FORTH
* IN THE BY RECIPIENT SELECTED SUBSIDIARY LICENSE CONDITIONS OF OSMC-PL.
*
* See the full OSMC Public License conditions for more details.
*
*/
encapsulated package Global
" file: Global.mo
package: Global
description: Global contains structures that are available globally.
The Global package contains structures that are available globally."
constant Integer recursionDepthLimit = 256;
constant Integer maxFunctionFileLength = 50;
// Thread-local roots
constant Integer instOnlyForcedFunctions = 0;
constant Integer simulationData = 0 "For simulations";
constant Integer codegenTryThrowIndex = 1;
constant Integer codegenFunctionList = 2;
constant Integer symbolTable = 3;
// Global roots start at index=9
constant Integer instHashIndex = 9;
constant Integer builtinIndex = 12;
constant Integer builtinEnvIndex = 13;
constant Integer profilerTime1Index = 14;
constant Integer profilerTime2Index = 15;
constant Integer flagsIndex = 16;
constant Integer builtinGraphIndex = 17;
constant Integer rewriteRulesIndex = 18;
constant Integer stackoverFlowIndex = 19;
constant Integer gcProfilingIndex = 20;
constant Integer inlineHashTable = 21; // TODO: Should be a local root?
constant Integer currentInstVar = 22;
constant Integer operatorOverloadingCache = 23;
constant Integer optionSimCode = 24;
constant Integer interactiveCache = 25;
constant Integer isSynchronous = 26;
// indexes in System.tick
// ----------------------
// temp vars index
constant Integer tmpVariableIndex = 4;
// file seq
constant Integer backendDAE_fileSequence = 20;
// jacobian name
constant Integer backendDAE_jacobianSeq = 21;
// nodeId
constant Integer fgraph_nextId = 22;
// csevar name
constant Integer backendDAE_cseIndex = 23;
// strong component index
constant Integer strongComponent_index = 24;
// class extends
constant Integer classExtends_index = 25;
// ----------------------
public function initialize "Called to initialize global roots (when needed)"
algorithm
setGlobalRoot(instOnlyForcedFunctions, NONE());
setGlobalRoot(rewriteRulesIndex, NONE());
setGlobalRoot(stackoverFlowIndex, NONE());
setGlobalRoot(inlineHashTable, NONE());
setGlobalRoot(currentInstVar, NONE());
setGlobalRoot(interactiveCache, NONE());
end initialize;
annotation(__OpenModelica_Interface="util");
end Global;