1 /*
2 * Copyright (c) 2008 Texas Instruments. All rights reserved.
3 * This program and the accompanying materials are made available under the
4 * terms of the Eclipse Public License v1.0 and Eclipse Distribution License
5 * v. 1.0 which accompanies this distribution. The Eclipse Public License is
6 * available at http://www.eclipse.org/legal/epl-v10.html and the Eclipse
7 * Distribution License is available at
8 * http://www.eclipse.org/org/documents/edl-v10.php.
9 *
10 * Contributors:
11 * Texas Instruments - initial implementation
12 * */
13 /*
14 * ======== GateThread.xdc ========
15 */
16
17 import xdc.runtime.IGateProvider;
18 import xdc.runtime.knl.IGateThreadSupport;
19
20 /*!
21 * ======== GateThread ========
22 * Provides protection of critical sections across threads.
23 *
24 * This module provides services through its proxy
25 * IGateThreadSupport interface. It has a module wide config parameter
26 * {@link #Proxy} which needs to be bound to an OS specific delegate before
27 * this module can be used.
28 *
29 * Here is an example showing how the proxy is bound to an BIOS 6.x specific
30 * delegate.
31 *
32 * @p(code) 33 * var GateThread = xdc.useModule('xdc.runtime.knl.GateThread');
34 * GateThread.Proxy =
35 * xdc.useModule('ti.sysbios.xdcruntime.GateThreadSupport');
36 * @p 37 *
38 * Typically the package containing the delegates have a Settings module that
39 * will bind all {@link xdc.runtime.knl} proxies. The following
40 * example sets up all the xdc.runtime.knl proxies.
41 *
42 * @p(code) 43 * xdc.useModule("ti.sysbios.xdcruntime.Settings");
44 * @p 45 */
46
47 @InstanceInitError /* because initialization can fail */
48 @InstanceFinalize /* have to Gate_Proxy_delete(sem) on delete */
49
50 module GateThread inherits IGateProvider
51 {
52 /*! Proxy that needs to be bound to an OS specific delegate. */
53 proxy Proxy inherits IGateThreadSupport;
54
55 internal:
56
57 struct Instance_State {
58 Proxy.Handle proxyHandle;
59 }
60
61 }
62 /*
63 * @(#) xdc.runtime.knl; 1, 0, 0,108; 1-26-2011 10:39:22; /db/ztree/library/trees/xdc/xdc-v56x/src/packages/
64 */
65