1 2 3 4 5 6 7 8 9 10 11
12 /*!
13 * ======== Model ========
14 * The ROV Model is the core of ROV. The Model must be started in order to
15 * retrieve ROV views for any modules.
16 *
17 * The Model has a compatibility key. Any changes or additions to the public
18 * interfaces of the ROV core will result in a bump of the model version
19 * number.
20 */
21 metaonly module Model {
22
23 /*!
24 * ======== vers ========
25 * ROV API version number
26 *
27 * Model.start will throw an exception if the version parameter does not
28 * equal the Model's current version. The version number is changed based
29 * on modifications to the public APIs (in xdc.rov.Program) that would
30 * potentially break compatibility with clients.
31 * This allows the Model to verify compatibility with it's client.
32 */
33 config Int vers = 4;
34
35 /*!
36 * ======== start ========
37 * Start the ROV Model
38 *
39 * The ROV Model requires instances of an ISymbolTable, an IMemoryImage,
40 * and an ICallBack. It also requires the ROV recap file, which can be
41 * located using the xdc.rov.Recap module.
42 *
43 * @param(vers) Model.start will throw an exception if the version
44 * parameter does not equal the Model's current
45 * `{@link #vers version}`.
46 *
47 * @param(recap) Capsule of the ROV recap file. Retrieve this with
48 * `xdc.loadCapsule(recapFilePath)`.
49 *
50 * @param(executable) The path to the executable file
51 *
52 * @param(sym) an object that implements the xdc.rov.ISymbolTable
53 * interface used to read symbols defined by the
54 * executable
55 *
56 * @param(mem) an object that implements the xdc.rov.IMemoryImage
57 * interface used to read target memory
58 *
59 * @param(callBack) an object that implements the xdc.rov.ICallback
60 * interface used to report progress status
61 */
62 Void start(Int vers, String executable, Any recap,
63 ISymbolTable.Instance sym, Any mem,
64 ICallBack.Instance callBack);
65
66 /*!
67 * ======== getISymbolTableInst ========
68 */
69 ISymbolTable.Instance getISymbolTableInst();
70
71 /*!
72 * ======== getMemoryImageInst ========
73 */
74 function getMemoryImageInst();
75
76 /*!
77 * ======== getICallBackInst ========
78 */
79 ICallBack.Instance getICallBackInst();
80
81 /*!
82 * ======== getIOFReaderInst ========
83 */
84 function getIOFReaderInst();
85
86 /*!
87 * ======== getModuleList ========
88 */
89 Any getModuleList();
90 }
91 92 93
94