Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(176)

Side by Side Diff: include/dartino_api.h

Issue 1659163007: Rename fletch -> dartino (Closed) Base URL: https://github.com/dartino/sdk.git@master
Patch Set: address comments Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « fletch.gyp ('k') | include/dartino_relocation_api.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE.md file. 3 // BSD-style license that can be found in the LICENSE.md file.
4 4
5 #ifndef INCLUDE_FLETCH_API_H_ 5 #ifndef INCLUDE_DARTINO_API_H_
6 #define INCLUDE_FLETCH_API_H_ 6 #define INCLUDE_DARTINO_API_H_
7 7
8 #include <stdbool.h> 8 #include <stdbool.h>
9 9
10 #ifdef _MSC_VER 10 #ifdef _MSC_VER
11 // TODO(herhut): Do we need a __declspec here for Windows? 11 // TODO(herhut): Do we need a __declspec here for Windows?
12 #define FLETCH_VISIBILITY_DEFAULT 12 #define DARTINO_VISIBILITY_DEFAULT
13 #else 13 #else
14 #define FLETCH_VISIBILITY_DEFAULT __attribute__((visibility("default"))) 14 #define DARTINO_VISIBILITY_DEFAULT __attribute__((visibility("default")))
15 #endif 15 #endif
16 16
17 #ifdef __cplusplus 17 #ifdef __cplusplus
18 #define FLETCH_EXPORT extern "C" FLETCH_VISIBILITY_DEFAULT 18 #define DARTINO_EXPORT extern "C" DARTINO_VISIBILITY_DEFAULT
19 #else 19 #else
20 #define FLETCH_EXPORT FLETCH_VISIBILITY_DEFAULT 20 #define DARTINO_EXPORT DARTINO_VISIBILITY_DEFAULT
21 #endif 21 #endif
22 22
23 typedef void* FletchProgram; 23 typedef void* DartinoProgram;
24 typedef void* FletchPrintInterceptor; 24 typedef void* DartinoPrintInterceptor;
25 typedef void (*PrintInterceptionFunction)( 25 typedef void (*PrintInterceptionFunction)(
26 const char* message, int out, void* data); 26 const char* message, int out, void* data);
27 typedef void (*ProgramExitCallback)(FletchProgram*, int exitcode, void* data); 27 typedef void (*ProgramExitCallback)(DartinoProgram*, int exitcode, void* data);
28 28
29 // Setup must be called before using any of the other API methods. 29 // Setup must be called before using any of the other API methods.
30 FLETCH_EXPORT void FletchSetup(void); 30 DARTINO_EXPORT void DartinoSetup(void);
31 31
32 // TearDown should be called when an application is done using the 32 // TearDown should be called when an application is done using the
33 // fletch API in order to free up resources. 33 // dartino API in order to free up resources.
34 FLETCH_EXPORT void FletchTearDown(void); 34 DARTINO_EXPORT void DartinoTearDown(void);
35 35
36 // Wait for a debugger connection. The debugger will build the program 36 // Wait for a debugger connection. The debugger will build the program
37 // to run in the VM and start it. 37 // to run in the VM and start it.
38 FLETCH_EXPORT void FletchWaitForDebuggerConnection(int port); 38 DARTINO_EXPORT void DartinoWaitForDebuggerConnection(int port);
39 39
40 // Load a program from a snapshot. 40 // Load a program from a snapshot.
41 FLETCH_EXPORT FletchProgram FletchLoadSnapshot(unsigned char* snapshot, 41 DARTINO_EXPORT DartinoProgram DartinoLoadSnapshot(unsigned char* snapshot,
42 int length); 42 int length);
43 43
44 // Load the snapshot from the file and load the program from the snapshot. 44 // Load the snapshot from the file and load the program from the snapshot.
45 FLETCH_EXPORT FletchProgram FletchLoadSnapshotFromFile(const char* path); 45 DARTINO_EXPORT DartinoProgram DartinoLoadSnapshotFromFile(const char* path);
46 46
47 // Delete a program. 47 // Delete a program.
48 FLETCH_EXPORT void FletchDeleteProgram(FletchProgram program); 48 DARTINO_EXPORT void DartinoDeleteProgram(DartinoProgram program);
49 49
50 // Load a program from the given location. Location should point to a 50 // Load a program from the given location. Location should point to a
51 // reloacted program heap with appended info block, usually build using 51 // reloacted program heap with appended info block, usually build using
52 // the flashtool utility or by relocating a loaded program. 52 // the flashtool utility or by relocating a loaded program.
53 FLETCH_EXPORT FletchProgram FletchLoadProgramFromFlash(void* location, 53 DARTINO_EXPORT DartinoProgram DartinoLoadProgramFromFlash(void* location,
54 size_t size); 54 size_t size);
55 55
56 // Starts the main method of the program. The given callback will be called once 56 // Starts the main method of the program. The given callback will be called once
57 // all processes of the program have terminated. 57 // all processes of the program have terminated.
58 // 58 //
59 // The [callback] might be called on FletchVM internal threads and is not 59 // The [callback] might be called on DartinoVM internal threads and is not
60 // allowed to use the Fletch API. 60 // allowed to use the Dartino API.
61 // TODO(kustermann/herhut): We should 61 // TODO(kustermann/herhut): We should
62 // * make clear what the callback can do and what not (e.g. 62 // * make clear what the callback can do and what not (e.g.
63 // FletchDeleteProgram) 63 // DartinoDeleteProgram)
64 // * use thread-local storage - at least in debug mode - which ensures this. 64 // * use thread-local storage - at least in debug mode - which ensures this.
65 FLETCH_EXPORT void FletchStartMain(FletchProgram program, 65 DARTINO_EXPORT void DartinoStartMain(DartinoProgram program,
66 ProgramExitCallback callback, 66 ProgramExitCallback callback,
67 void* callback_data); 67 void* callback_data);
68 68
69 // Run the main method of the program and wait until it is done executing. 69 // Run the main method of the program and wait until it is done executing.
70 FLETCH_EXPORT int FletchRunMain(FletchProgram program); 70 DARTINO_EXPORT int DartinoRunMain(DartinoProgram program);
71 71
72 // Run the main method of multiple programs and wait until all of them are done 72 // Run the main method of multiple programs and wait until all of them are done
73 // executing. 73 // executing.
74 FLETCH_EXPORT void FletchRunMultipleMain(int count, 74 DARTINO_EXPORT void DartinoRunMultipleMain(int count,
75 FletchProgram* programs, 75 DartinoProgram* programs,
76 int* exitcodes); 76 int* exitcodes);
77 77
78 // Load the snapshot from the file, load the program from the 78 // Load the snapshot from the file, load the program from the
79 // snapshot, run the main process of that program and wait until it is done 79 // snapshot, run the main process of that program and wait until it is done
80 // executing. 80 // executing.
81 FLETCH_EXPORT void FletchRunSnapshotFromFile(const char* path); 81 DARTINO_EXPORT void DartinoRunSnapshotFromFile(const char* path);
82 82
83 // Add a default shared library for the dart:ffi foreign lookups. 83 // Add a default shared library for the dart:ffi foreign lookups.
84 // More than one default shared library can be added. The libraries 84 // More than one default shared library can be added. The libraries
85 // are used for foreign lookups where no library has been specified. 85 // are used for foreign lookups where no library has been specified.
86 // The libraries are searched in the order in which they are added. 86 // The libraries are searched in the order in which they are added.
87 // The library string must be null-terminated and Fletch does not 87 // The library string must be null-terminated and Dartino does not
88 // take over ownership of the passed in string. 88 // take over ownership of the passed in string.
89 FLETCH_EXPORT bool FletchAddDefaultSharedLibrary(const char* library); 89 DARTINO_EXPORT bool DartinoAddDefaultSharedLibrary(const char* library);
90 90
91 // Register a print interception function. When a print occurs the passed 91 // Register a print interception function. When a print occurs the passed
92 // function will be called with the message, an output id 2 for stdout or output 92 // function will be called with the message, an output id 2 for stdout or output
93 // id 3 for stderr, as well as the data associated with this registration. 93 // id 3 for stderr, as well as the data associated with this registration.
94 // The result of registration is an interceptor instance that can be used to 94 // The result of registration is an interceptor instance that can be used to
95 // subsequently unregister the interceptor. 95 // subsequently unregister the interceptor.
96 FLETCH_EXPORT FletchPrintInterceptor FletchRegisterPrintInterceptor( 96 DARTINO_EXPORT DartinoPrintInterceptor DartinoRegisterPrintInterceptor(
97 PrintInterceptionFunction function, 97 PrintInterceptionFunction function,
98 void* data); 98 void* data);
99 99
100 // Unregister a print interceptor. This must be called with an interceptor 100 // Unregister a print interceptor. This must be called with an interceptor
101 // instance that was created using the registration function. The interceptor 101 // instance that was created using the registration function. The interceptor
102 // instance is reclaimed and no longer valid after having called this function. 102 // instance is reclaimed and no longer valid after having called this function.
103 FLETCH_EXPORT void FletchUnregisterPrintInterceptor( 103 DARTINO_EXPORT void DartinoUnregisterPrintInterceptor(
104 FletchPrintInterceptor interceptor); 104 DartinoPrintInterceptor interceptor);
105 105
106 #endif // INCLUDE_FLETCH_API_H_ 106 #endif // INCLUDE_DARTINO_API_H_
OLDNEW
« no previous file with comments | « fletch.gyp ('k') | include/dartino_relocation_api.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698