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 package ti.sdo.tiler;
41
42
43 /*!
44 * ======== Settings ========
45 * Global configuration settings for the ti.sdo.tiler package
46 *
47 */
48
49 @Template("./Settings.xdt")
50
51 metaonly module Settings
52 {
53
54
55
56
57
58 /*!
59 * Available tiler library implementations
60 *
61 * @value(TilerLib_Stub) This library implements stub functions
62 * which make remote function calls to a tiler manager on another
63 * core. When using this value, you must also specify the
64 * {@link #tilerDaemon} config param.
65 *
66 * @value(TilerLib_Skel) This library implements the skel
67 * functions which are the remote parts of the stub functions.
68 * Use this value when configuring the tiler daemon. When using
69 * this value, you must also specify the {@link #tilerManagerOS}
70 * config param.
71 *
72 * @value(TilerLib_Direct) This library links in direct calls to
73 * the tiler manager. Use this value when configuring a program
74 * which is running on the same core as the tiler manager. When
75 * using this value, you must also specify the {@link #tilerManagerOS}
76 * config param.
77 */
78 enum TilerLib {
79 TilerLib_Stub,
80 TilerLib_Skel,
81 TilerLib_Direct
82 };
83
84 /*!
85 * Operating systems used for hosting the tiler manager
86 *
87 * @value(OperSys_Linux) The tiler manager is running on Linux.
88 *
89 * @value(OperSys_WinCE) The tiler manager is running on WindowsCE.
90 *
91 * @value(OperSys_RTOS) The tiler manager is running on a real-time
92 * operating system which does not make a distinction between
93 * user and kernel modes.
94 */
95 enum OperSys {
96 OperSys_Linux,
97 OperSys_WinCE,
98 OperSys_RTOS
99 };
100
101
102
103 /*!
104 * Heap id to use for allocating messages
105 *
106 * When using a remote tiler manager, the client application must
107 * send messages to execute the tiler manager functions. This config
108 * param is used by the underlying IPC layers to identify which heap
109 * should be used for allocating these messages.
110 *
111 * If the executable is making direct (local) calls to the tiler
112 * manager, then leave this config param undefined.
113 */
114 config UInt16 heapId;
115
116 /*!
117 * Specifies the name of the tiler daemon
118 *
119 * When configuring an executable which is using a tiler manager
120 * that is running on another core, this config param must be set
121 * to the name of the tiler daemon.
122 */
123 config String tilerDaemonName = null;
124
125 /*!
126 * Specify which tiler library implementation to use
127 *
128 * This config param specifies which tiler library implementation to
129 * link into the program. There are several different versions:
130 *
131 * @p(blist)
132 * - A tiler client program where the tiler manager is running
133 * on another core. Use {@link #TilerLib_Stub}.
134 *
135 * - A tiler daemon program which is used to service remote
136 * tiler client programs. The daemon must be running on the same core
137 * as the tiler manager. Use {@link #TilerLib_Skel}.
138 *
139 * - A tiler client program running on the same core as the
140 * tiler manager. Use {@link #TilerLib_Direct}.
141 * @p
142 */
143 config TilerLib tilerLib;
144
145 /*!
146 * Specifies operating system on which the tiler manager is running
147 *
148 * When configuring a program which is running on the same core
149 * as the tiler manager, set this config param to the host operating
150 * system. If the tiler manager is not part of the executable, then
151 * leave it undefined.
152 *
153 * For example, if building an executable which is running on the same
154 * core as the tiler manager, (e.g. a local tiler client or the tiler
155 * daemon) then set this config param to the OS type. If building an
156 * executable which is making tiler calls to another core (e.g. a
157 * remote tiler client), then leave this config param undefined.
158 */
159 config OperSys tilerManagerOS;
160 }
161 162 163 164
165