mux: support log handler

Signed-off-by: Wataru Ishida <ishida@nel-america.com>
This commit is contained in:
Wataru Ishida
2019-06-26 18:29:06 -07:00
committed by Wataru Ishida
parent 5c3e0c1611
commit 89fb966954
4 changed files with 9 additions and 8 deletions

View File

@@ -7,7 +7,7 @@
typedef tai_status_t (*tai_api_initialize_fn) (uint64_t, const tai_service_method_table_t *);
typedef tai_status_t (*tai_api_uninitialize_fn) (void);
typedef tai_status_t (*tai_api_query_fn) (tai_api_t, void**);
typedef tai_status_t (*tai_log_set_fn) (tai_api_t, tai_log_level_t);
typedef tai_status_t (*tai_log_set_fn) (tai_api_t, tai_log_level_t, tai_log_fn);
typedef tai_object_type_t (*tai_object_type_query_fn) (tai_object_id_t);
typedef tai_object_id_t (*tai_module_id_query_fn) (tai_object_id_t);
@@ -27,8 +27,8 @@ class ModuleAdapter {
tai_status_t tai_api_uninitialize(void) {
return m_tai_api_uninitialize();
}
tai_status_t tai_log_set(tai_api_t tai_api_id, tai_log_level_t log_level) {
return m_tai_log_set(tai_api_id, log_level);
tai_status_t tai_log_set(tai_api_t tai_api_id, tai_log_level_t log_level, tai_log_fn log_fn) {
return m_tai_log_set(tai_api_id, log_level, log_fn);
}
tai_object_type_t tai_object_type_query(tai_object_id_t tai_object_id) {
return m_tai_object_type_query(tai_object_id);

View File

@@ -233,13 +233,13 @@ tai_object_id_t Multiplexier::module_id_query(_In_ tai_object_id_t id) {
return g_mux->get_reverse_mapping(m_adapter->tai_module_id_query(realid), m_adapter);
}
tai_status_t Multiplexier::tai_log_set(_In_ tai_api_t api, _In_ tai_log_level_t level) {
tai_status_t Multiplexier::tai_log_set(_In_ tai_api_t api, _In_ tai_log_level_t level, _In_ tai_log_fn log_fn) {
if ( g_mux == nullptr ) {
return TAI_STATUS_UNINITIALIZED;
}
auto set = m_pa->list_module_adapters();
for ( const auto& a : set ) {
auto ret = a->tai_log_set(api, level);
auto ret = a->tai_log_set(api, level, log_fn);
if ( ret != TAI_STATUS_SUCCESS ) {
return ret;
}

View File

@@ -136,7 +136,8 @@ class Multiplexier {
tai_status_t tai_log_set(
_In_ tai_api_t tai_api_id,
_In_ tai_log_level_t log_level);
_In_ tai_log_level_t log_level,
_In_ tai_log_fn log_fn);
private:
Multiplexier(const Multiplexier&){}

View File

@@ -220,8 +220,8 @@ tai_status_t tai_api_query(_In_ tai_api_t tai_api_id,
return TAI_STATUS_SUCCESS;
}
tai_status_t tai_log_set(tai_api_t tai_api_id, tai_log_level_t log_level) {
return g_mux->tai_log_set(tai_api_id, log_level);
tai_status_t tai_log_set(tai_api_t tai_api_id, tai_log_level_t log_level, tai_log_fn log_fn) {
return g_mux->tai_log_set(tai_api_id, log_level, log_fn);
}
tai_object_type_t tai_object_type_query(tai_object_id_t id) {