File tree Expand file tree Collapse file tree 4 files changed +20
-21
lines changed Expand file tree Collapse file tree 4 files changed +20
-21
lines changed Original file line number Diff line number Diff line change @@ -34,10 +34,7 @@ class XPTIRegistry {
34
34
void initializeFrameworkOnce () {
35
35
#ifdef XPTI_ENABLE_INSTRUMENTATION
36
36
if (!MInitialized) {
37
- xpti::result_t result = xptiFrameworkInitialize ();
38
- if (result != xpti::result_t ::XPTI_RESULT_SUCCESS) {
39
- throw std::runtime_error (" Failed to initialize XPTI" );
40
- }
37
+ xptiFrameworkInitialize ();
41
38
MInitialized = true ;
42
39
}
43
40
#endif
Original file line number Diff line number Diff line change 34
34
35
35
extern "C" {
36
36
37
- XPTI_EXPORT_API xpti ::result_t xptiFrameworkInitialize ();
38
- XPTI_EXPORT_API xpti ::result_t xptiFrameworkFinalize ();
37
+ /// @brief Initializes XPTI framework.
38
+ /// @details Initialize XPTI framework resources. Each user of XPTI must call
39
+ /// this function prior to any other XPTI API call. It is framework's
40
+ /// responsibility to ensure that resources are initialized once. Each call to
41
+ /// this function must have corresponding call to xptiFrameworkFinalize() to
42
+ /// ensure resources are freed.
43
+ XPTI_EXPORT_API void xptiFrameworkInitialize ();
44
+
45
+ /// @brief Deinitializes XPTI framework.
46
+ /// @details Call to this function decrements framework's internal reference
47
+ /// counter. Once its value is equal to zero, XPTI framework can release
48
+ /// resources and unload subscribers.
49
+ XPTI_EXPORT_API void xptiFrameworkFinalize ();
39
50
40
51
/// @brief Initialization function that is called when a new stream is generated
41
52
/// @details When a runtime or application that uses XPTI instrumentation API
Original file line number Diff line number Diff line change @@ -140,32 +140,26 @@ class ProxyLoader {
140
140
};
141
141
} // namespace xpti
142
142
143
- XPTI_EXPORT_API xpti:: result_t xptiFrameworkInitialize () {
143
+ XPTI_EXPORT_API void xptiFrameworkInitialize () {
144
144
if (xpti::ProxyLoader::instance ().noErrors ()) {
145
145
void *f = xpti::ProxyLoader::instance ().functionByIndex (
146
146
XPTI_FRAMEWORK_INITIALIZE);
147
147
if (f) {
148
- return (*reinterpret_cast <xpti_framework_initialize_t >(f))();
148
+ (*reinterpret_cast <xpti_framework_initialize_t >(f))();
149
149
}
150
150
}
151
-
152
- return xpti::result_t ::XPTI_RESULT_FAIL;
153
151
}
154
152
155
- XPTI_EXPORT_API xpti::result_t xptiFrameworkFinalize () {
156
- xpti::result_t result = xpti::result_t ::XPTI_RESULT_FAIL;
157
-
153
+ XPTI_EXPORT_API void xptiFrameworkFinalize () {
158
154
if (xpti::ProxyLoader::instance ().noErrors ()) {
159
155
void *f = xpti::ProxyLoader::instance ().functionByIndex (
160
156
XPTI_FRAMEWORK_INITIALIZE);
161
157
if (f) {
162
- result = (*reinterpret_cast <xpti_framework_initialize_t >(f))();
158
+ (*reinterpret_cast <xpti_framework_initialize_t >(f))();
163
159
}
164
160
}
165
161
166
162
delete &xpti::ProxyLoader::instance ();
167
-
168
- return result;
169
163
}
170
164
171
165
XPTI_EXPORT_API uint16_t xptiRegisterUserDefinedTracePoint (
Original file line number Diff line number Diff line change @@ -1004,21 +1004,18 @@ static int GFrameworkReferenceCounter = 0;
1004
1004
1005
1005
extern " C" {
1006
1006
1007
- XPTI_EXPORT_API xpti:: result_t xptiFrameworkInitialize () {
1007
+ XPTI_EXPORT_API void xptiFrameworkInitialize () {
1008
1008
std::lock_guard<xpti::utils::SpinLock> guard{xpti::g_framework_mutex};
1009
1009
xpti::GFrameworkReferenceCounter++;
1010
- return xpti::result_t ::XPTI_RESULT_SUCCESS;
1011
1010
}
1012
1011
1013
- XPTI_EXPORT_API xpti:: result_t xptiFrameworkFinalize () {
1012
+ XPTI_EXPORT_API void xptiFrameworkFinalize () {
1014
1013
std::lock_guard<xpti::utils::SpinLock> guard{xpti::g_framework_mutex};
1015
1014
1016
1015
xpti::GFrameworkReferenceCounter--;
1017
1016
if (xpti::GFrameworkReferenceCounter == 0 ) {
1018
1017
delete &xpti::Framework::instance ();
1019
1018
}
1020
-
1021
- return xpti::result_t ::XPTI_RESULT_SUCCESS;
1022
1019
}
1023
1020
1024
1021
XPTI_EXPORT_API uint16_t
You can’t perform that action at this time.
0 commit comments