Location: reduce memory footprint
Reduce memory footprint by moving data sets into const data segments. Update function parameters to accept const parameters when appropriate. CRs-fixed: 928770 Change-Id: I42955cf18de2b0541cfaed89359cdcf9ae6fea8a
This commit is contained in:
parent
15ea4fca38
commit
78bb13288e
6 changed files with 62 additions and 59 deletions
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2014, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2015, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
|
@ -49,7 +49,7 @@ void LocPosMode::logv() const
|
|||
}
|
||||
|
||||
/* GPS status names */
|
||||
static loc_name_val_s_type gps_status_name[] =
|
||||
static const loc_name_val_s_type gps_status_name[] =
|
||||
{
|
||||
NAME_VAL( GPS_STATUS_NONE ),
|
||||
NAME_VAL( GPS_STATUS_SESSION_BEGIN ),
|
||||
|
@ -57,7 +57,7 @@ static loc_name_val_s_type gps_status_name[] =
|
|||
NAME_VAL( GPS_STATUS_ENGINE_ON ),
|
||||
NAME_VAL( GPS_STATUS_ENGINE_OFF ),
|
||||
};
|
||||
static int gps_status_num = sizeof(gps_status_name) / sizeof(loc_name_val_s_type);
|
||||
static const int gps_status_num = sizeof(gps_status_name) / sizeof(loc_name_val_s_type);
|
||||
|
||||
/* Find Android GPS status name */
|
||||
const char* loc_get_gps_status_name(GpsStatusValue gps_status)
|
||||
|
@ -68,7 +68,7 @@ const char* loc_get_gps_status_name(GpsStatusValue gps_status)
|
|||
|
||||
|
||||
|
||||
static loc_name_val_s_type loc_eng_position_modes[] =
|
||||
static const loc_name_val_s_type loc_eng_position_modes[] =
|
||||
{
|
||||
NAME_VAL( LOC_POSITION_MODE_STANDALONE ),
|
||||
NAME_VAL( LOC_POSITION_MODE_MS_BASED ),
|
||||
|
@ -79,7 +79,7 @@ static loc_name_val_s_type loc_eng_position_modes[] =
|
|||
NAME_VAL( LOC_POSITION_MODE_RESERVED_4 ),
|
||||
NAME_VAL( LOC_POSITION_MODE_RESERVED_5 )
|
||||
};
|
||||
static int loc_eng_position_mode_num = sizeof(loc_eng_position_modes) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_position_mode_num = sizeof(loc_eng_position_modes) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_position_mode_name(GpsPositionMode mode)
|
||||
{
|
||||
|
@ -88,12 +88,12 @@ const char* loc_get_position_mode_name(GpsPositionMode mode)
|
|||
|
||||
|
||||
|
||||
static loc_name_val_s_type loc_eng_position_recurrences[] =
|
||||
static const loc_name_val_s_type loc_eng_position_recurrences[] =
|
||||
{
|
||||
NAME_VAL( GPS_POSITION_RECURRENCE_PERIODIC ),
|
||||
NAME_VAL( GPS_POSITION_RECURRENCE_SINGLE )
|
||||
};
|
||||
static int loc_eng_position_recurrence_num = sizeof(loc_eng_position_recurrences) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_position_recurrence_num = sizeof(loc_eng_position_recurrences) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_position_recurrence_name(GpsPositionRecurrence recur)
|
||||
{
|
||||
|
@ -102,7 +102,7 @@ const char* loc_get_position_recurrence_name(GpsPositionRecurrence recur)
|
|||
|
||||
|
||||
|
||||
static loc_name_val_s_type loc_eng_aiding_data_bits[] =
|
||||
static const loc_name_val_s_type loc_eng_aiding_data_bits[] =
|
||||
{
|
||||
NAME_VAL( GPS_DELETE_EPHEMERIS ),
|
||||
NAME_VAL( GPS_DELETE_ALMANAC ),
|
||||
|
@ -118,7 +118,7 @@ static loc_name_val_s_type loc_eng_aiding_data_bits[] =
|
|||
NAME_VAL( GPS_DELETE_CELLDB_INFO ),
|
||||
NAME_VAL( GPS_DELETE_ALL)
|
||||
};
|
||||
static int loc_eng_aiding_data_bit_num = sizeof(loc_eng_aiding_data_bits) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_aiding_data_bit_num = sizeof(loc_eng_aiding_data_bits) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_aiding_data_mask_names(GpsAidingData data)
|
||||
{
|
||||
|
@ -126,7 +126,7 @@ const char* loc_get_aiding_data_mask_names(GpsAidingData data)
|
|||
}
|
||||
|
||||
|
||||
static loc_name_val_s_type loc_eng_agps_types[] =
|
||||
static const loc_name_val_s_type loc_eng_agps_types[] =
|
||||
{
|
||||
NAME_VAL( AGPS_TYPE_INVALID ),
|
||||
NAME_VAL( AGPS_TYPE_ANY ),
|
||||
|
@ -134,7 +134,7 @@ static loc_name_val_s_type loc_eng_agps_types[] =
|
|||
NAME_VAL( AGPS_TYPE_C2K ),
|
||||
NAME_VAL( AGPS_TYPE_WWAN_ANY )
|
||||
};
|
||||
static int loc_eng_agps_type_num = sizeof(loc_eng_agps_types) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_agps_type_num = sizeof(loc_eng_agps_types) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_agps_type_name(AGpsType type)
|
||||
{
|
||||
|
@ -142,14 +142,14 @@ const char* loc_get_agps_type_name(AGpsType type)
|
|||
}
|
||||
|
||||
|
||||
static loc_name_val_s_type loc_eng_ni_types[] =
|
||||
static const loc_name_val_s_type loc_eng_ni_types[] =
|
||||
{
|
||||
NAME_VAL( GPS_NI_TYPE_VOICE ),
|
||||
NAME_VAL( GPS_NI_TYPE_UMTS_SUPL ),
|
||||
NAME_VAL( GPS_NI_TYPE_UMTS_CTRL_PLANE ),
|
||||
NAME_VAL( GPS_NI_TYPE_EMERGENCY_SUPL )
|
||||
};
|
||||
static int loc_eng_ni_type_num = sizeof(loc_eng_ni_types) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_ni_type_num = sizeof(loc_eng_ni_types) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_ni_type_name(GpsNiType type)
|
||||
{
|
||||
|
@ -157,13 +157,13 @@ const char* loc_get_ni_type_name(GpsNiType type)
|
|||
}
|
||||
|
||||
|
||||
static loc_name_val_s_type loc_eng_ni_responses[] =
|
||||
static const loc_name_val_s_type loc_eng_ni_responses[] =
|
||||
{
|
||||
NAME_VAL( GPS_NI_RESPONSE_ACCEPT ),
|
||||
NAME_VAL( GPS_NI_RESPONSE_DENY ),
|
||||
NAME_VAL( GPS_NI_RESPONSE_DENY )
|
||||
};
|
||||
static int loc_eng_ni_reponse_num = sizeof(loc_eng_ni_responses) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_ni_reponse_num = sizeof(loc_eng_ni_responses) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_ni_response_name(GpsUserResponseType response)
|
||||
{
|
||||
|
@ -171,7 +171,7 @@ const char* loc_get_ni_response_name(GpsUserResponseType response)
|
|||
}
|
||||
|
||||
|
||||
static loc_name_val_s_type loc_eng_ni_encodings[] =
|
||||
static const loc_name_val_s_type loc_eng_ni_encodings[] =
|
||||
{
|
||||
NAME_VAL( GPS_ENC_NONE ),
|
||||
NAME_VAL( GPS_ENC_SUPL_GSM_DEFAULT ),
|
||||
|
@ -179,55 +179,55 @@ static loc_name_val_s_type loc_eng_ni_encodings[] =
|
|||
NAME_VAL( GPS_ENC_SUPL_UCS2 ),
|
||||
NAME_VAL( GPS_ENC_UNKNOWN )
|
||||
};
|
||||
static int loc_eng_ni_encoding_num = sizeof(loc_eng_ni_encodings) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_ni_encoding_num = sizeof(loc_eng_ni_encodings) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_ni_encoding_name(GpsNiEncodingType encoding)
|
||||
{
|
||||
return loc_get_name_from_val(loc_eng_ni_encodings, loc_eng_ni_encoding_num, (long) encoding);
|
||||
}
|
||||
|
||||
static loc_name_val_s_type loc_eng_agps_bears[] =
|
||||
static const loc_name_val_s_type loc_eng_agps_bears[] =
|
||||
{
|
||||
NAME_VAL( AGPS_APN_BEARER_INVALID ),
|
||||
NAME_VAL( AGPS_APN_BEARER_IPV4 ),
|
||||
NAME_VAL( AGPS_APN_BEARER_IPV6 ),
|
||||
NAME_VAL( AGPS_APN_BEARER_IPV4V6 )
|
||||
};
|
||||
static int loc_eng_agps_bears_num = sizeof(loc_eng_agps_bears) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_agps_bears_num = sizeof(loc_eng_agps_bears) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_agps_bear_name(AGpsBearerType bearer)
|
||||
{
|
||||
return loc_get_name_from_val(loc_eng_agps_bears, loc_eng_agps_bears_num, (long) bearer);
|
||||
}
|
||||
|
||||
static loc_name_val_s_type loc_eng_server_types[] =
|
||||
static const loc_name_val_s_type loc_eng_server_types[] =
|
||||
{
|
||||
NAME_VAL( LOC_AGPS_CDMA_PDE_SERVER ),
|
||||
NAME_VAL( LOC_AGPS_CUSTOM_PDE_SERVER ),
|
||||
NAME_VAL( LOC_AGPS_MPC_SERVER ),
|
||||
NAME_VAL( LOC_AGPS_SUPL_SERVER )
|
||||
};
|
||||
static int loc_eng_server_types_num = sizeof(loc_eng_server_types) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_server_types_num = sizeof(loc_eng_server_types) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_server_type_name(LocServerType type)
|
||||
{
|
||||
return loc_get_name_from_val(loc_eng_server_types, loc_eng_server_types_num, (long) type);
|
||||
}
|
||||
|
||||
static loc_name_val_s_type loc_eng_position_sess_status_types[] =
|
||||
static const loc_name_val_s_type loc_eng_position_sess_status_types[] =
|
||||
{
|
||||
NAME_VAL( LOC_SESS_SUCCESS ),
|
||||
NAME_VAL( LOC_SESS_INTERMEDIATE ),
|
||||
NAME_VAL( LOC_SESS_FAILURE )
|
||||
};
|
||||
static int loc_eng_position_sess_status_num = sizeof(loc_eng_position_sess_status_types) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_position_sess_status_num = sizeof(loc_eng_position_sess_status_types) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_position_sess_status_name(enum loc_sess_status status)
|
||||
{
|
||||
return loc_get_name_from_val(loc_eng_position_sess_status_types, loc_eng_position_sess_status_num, (long) status);
|
||||
}
|
||||
|
||||
static loc_name_val_s_type loc_eng_agps_status_names[] =
|
||||
static const loc_name_val_s_type loc_eng_agps_status_names[] =
|
||||
{
|
||||
NAME_VAL( GPS_REQUEST_AGPS_DATA_CONN ),
|
||||
NAME_VAL( GPS_RELEASE_AGPS_DATA_CONN ),
|
||||
|
@ -235,7 +235,7 @@ static loc_name_val_s_type loc_eng_agps_status_names[] =
|
|||
NAME_VAL( GPS_AGPS_DATA_CONN_DONE ),
|
||||
NAME_VAL( GPS_AGPS_DATA_CONN_FAILED )
|
||||
};
|
||||
static int loc_eng_agps_status_num = sizeof(loc_eng_agps_status_names) / sizeof(loc_name_val_s_type);
|
||||
static const int loc_eng_agps_status_num = sizeof(loc_eng_agps_status_names) / sizeof(loc_name_val_s_type);
|
||||
|
||||
const char* loc_get_agps_status_name(AGpsStatusValue status)
|
||||
{
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2009-2014, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2009-2015, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
|
@ -94,7 +94,7 @@ loc_gps_cfg_s_type gps_conf;
|
|||
loc_sap_cfg_s_type sap_conf;
|
||||
|
||||
/* Parameter spec table */
|
||||
static loc_param_s_type gps_conf_table[] =
|
||||
static const loc_param_s_type gps_conf_table[] =
|
||||
{
|
||||
{"GPS_LOCK", &gps_conf.GPS_LOCK, NULL, 'n'},
|
||||
{"SUPL_VER", &gps_conf.SUPL_VER, NULL, 'n'},
|
||||
|
@ -113,7 +113,7 @@ static loc_param_s_type gps_conf_table[] =
|
|||
{"USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL", &gps_conf.USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL, NULL, 'n'},
|
||||
};
|
||||
|
||||
static loc_param_s_type sap_conf_table[] =
|
||||
static const loc_param_s_type sap_conf_table[] =
|
||||
{
|
||||
{"GYRO_BIAS_RANDOM_WALK", &sap_conf.GYRO_BIAS_RANDOM_WALK, &sap_conf.GYRO_BIAS_RANDOM_WALK_VALID, 'f'},
|
||||
{"ACCEL_RANDOM_WALK_SPECTRAL_DENSITY", &sap_conf.ACCEL_RANDOM_WALK_SPECTRAL_DENSITY, &sap_conf.ACCEL_RANDOM_WALK_SPECTRAL_DENSITY_VALID, 'f'},
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2014, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2015, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
|
@ -56,12 +56,12 @@ static uint32_t DEBUG_LEVEL = 0xff;
|
|||
static uint32_t TIMESTAMP = 0;
|
||||
|
||||
/* Parameter spec table */
|
||||
static loc_param_s_type loc_param_table[] =
|
||||
static const loc_param_s_type loc_param_table[] =
|
||||
{
|
||||
{"DEBUG_LEVEL", &DEBUG_LEVEL, NULL, 'n'},
|
||||
{"TIMESTAMP", &TIMESTAMP, NULL, 'n'},
|
||||
};
|
||||
int loc_param_num = sizeof(loc_param_table) / sizeof(loc_param_s_type);
|
||||
static const int loc_param_num = sizeof(loc_param_table) / sizeof(loc_param_s_type);
|
||||
|
||||
typedef struct loc_param_v_type
|
||||
{
|
||||
|
@ -92,7 +92,7 @@ RETURN VALUE
|
|||
SIDE EFFECTS
|
||||
N/A
|
||||
===========================================================================*/
|
||||
int loc_set_config_entry(loc_param_s_type* config_entry, loc_param_v_type* config_value)
|
||||
int loc_set_config_entry(const loc_param_s_type* config_entry, loc_param_v_type* config_value)
|
||||
{
|
||||
int ret=-1;
|
||||
if(NULL == config_entry || NULL == config_value)
|
||||
|
@ -181,7 +181,7 @@ SIDE EFFECTS
|
|||
N/A
|
||||
===========================================================================*/
|
||||
int loc_fill_conf_item(char* input_buf,
|
||||
loc_param_s_type* config_table, uint32_t table_length)
|
||||
const loc_param_s_type* config_table, uint32_t table_length)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
|
@ -258,7 +258,7 @@ RETURN VALUE
|
|||
SIDE EFFECTS
|
||||
N/A
|
||||
===========================================================================*/
|
||||
int loc_read_conf_r(FILE *conf_fp, loc_param_s_type* config_table, uint32_t table_length)
|
||||
int loc_read_conf_r(FILE *conf_fp, const loc_param_s_type* config_table, uint32_t table_length)
|
||||
{
|
||||
int ret=0;
|
||||
|
||||
|
@ -322,7 +322,7 @@ SIDE EFFECTS
|
|||
N/A
|
||||
===========================================================================*/
|
||||
int loc_update_conf(const char* conf_data, int32_t length,
|
||||
loc_param_s_type* config_table, uint32_t table_length)
|
||||
const loc_param_s_type* config_table, uint32_t table_length)
|
||||
{
|
||||
int ret = -1;
|
||||
|
||||
|
@ -377,7 +377,7 @@ RETURN VALUE
|
|||
SIDE EFFECTS
|
||||
N/A
|
||||
===========================================================================*/
|
||||
void loc_read_conf(const char* conf_file_name, loc_param_s_type* config_table,
|
||||
void loc_read_conf(const char* conf_file_name, const loc_param_s_type* config_table,
|
||||
uint32_t table_length)
|
||||
{
|
||||
FILE *conf_fp = NULL;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2014, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2015, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
|
@ -54,7 +54,7 @@
|
|||
*============================================================================*/
|
||||
typedef struct
|
||||
{
|
||||
char param_name[LOC_MAX_PARAM_NAME];
|
||||
const char *param_name;
|
||||
void *param_ptr;
|
||||
uint8_t *param_set; /* was this value set by config file? */
|
||||
char param_type; /* 'n' for number,
|
||||
|
@ -78,12 +78,12 @@ extern "C" {
|
|||
*
|
||||
*============================================================================*/
|
||||
void loc_read_conf(const char* conf_file_name,
|
||||
loc_param_s_type* config_table,
|
||||
const loc_param_s_type* config_table,
|
||||
uint32_t table_length);
|
||||
int loc_read_conf_r(FILE *conf_fp, loc_param_s_type* config_table,
|
||||
int loc_read_conf_r(FILE *conf_fp, const loc_param_s_type* config_table,
|
||||
uint32_t table_length);
|
||||
int loc_update_conf(const char* conf_data, int32_t length,
|
||||
loc_param_s_type* config_table, uint32_t table_length);
|
||||
const loc_param_s_type* config_table, uint32_t table_length);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2012, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2012, 2015, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
|
@ -57,9 +57,9 @@ const char EXIT_ERROR_TAG[] = "Exiting with error";
|
|||
loc_logger_s_type loc_logger;
|
||||
|
||||
/* Get names from value */
|
||||
const char* loc_get_name_from_mask(loc_name_val_s_type table[], int table_size, long mask)
|
||||
const char* loc_get_name_from_mask(const loc_name_val_s_type table[], size_t table_size, long mask)
|
||||
{
|
||||
int i;
|
||||
size_t i;
|
||||
for (i = 0; i < table_size; i++)
|
||||
{
|
||||
if (table[i].val & (long) mask)
|
||||
|
@ -71,9 +71,9 @@ const char* loc_get_name_from_mask(loc_name_val_s_type table[], int table_size,
|
|||
}
|
||||
|
||||
/* Get names from value */
|
||||
const char* loc_get_name_from_val(loc_name_val_s_type table[], int table_size, long value)
|
||||
const char* loc_get_name_from_val(const loc_name_val_s_type table[], size_t table_size, long value)
|
||||
{
|
||||
int i;
|
||||
size_t i;
|
||||
for (i = 0; i < table_size; i++)
|
||||
{
|
||||
if (table[i].val == (long) value)
|
||||
|
@ -84,7 +84,7 @@ const char* loc_get_name_from_val(loc_name_val_s_type table[], int table_size, l
|
|||
return UNKNOWN_STR;
|
||||
}
|
||||
|
||||
static loc_name_val_s_type loc_msg_q_status[] =
|
||||
static const loc_name_val_s_type loc_msg_q_status[] =
|
||||
{
|
||||
NAME_VAL( eMSG_Q_SUCCESS ),
|
||||
NAME_VAL( eMSG_Q_FAILURE_GENERAL ),
|
||||
|
@ -93,7 +93,7 @@ static loc_name_val_s_type loc_msg_q_status[] =
|
|||
NAME_VAL( eMSG_Q_UNAVAILABLE_RESOURCE ),
|
||||
NAME_VAL( eMSG_Q_INSUFFICIENT_BUFFER )
|
||||
};
|
||||
static int loc_msg_q_status_num = sizeof(loc_msg_q_status) / sizeof(loc_name_val_s_type);
|
||||
static const size_t loc_msg_q_status_num = LOC_TABLE_SIZE(loc_msg_q_status);
|
||||
|
||||
/* Find msg_q status name */
|
||||
const char* loc_get_msg_q_status(int status)
|
||||
|
@ -107,7 +107,7 @@ const char* log_succ_fail_string(int is_succ)
|
|||
}
|
||||
|
||||
//Target names
|
||||
loc_name_val_s_type target_name[] =
|
||||
static const loc_name_val_s_type target_name[] =
|
||||
{
|
||||
NAME_VAL(GNSS_NONE),
|
||||
NAME_VAL(GNSS_MSM),
|
||||
|
@ -118,7 +118,7 @@ loc_name_val_s_type target_name[] =
|
|||
NAME_VAL(GNSS_UNKNOWN)
|
||||
};
|
||||
|
||||
static int target_name_num = sizeof(target_name)/sizeof(loc_name_val_s_type);
|
||||
static const size_t target_name_num = LOC_TABLE_SIZE(target_name);
|
||||
|
||||
/*===========================================================================
|
||||
|
||||
|
@ -139,7 +139,7 @@ const char *loc_get_target_name(unsigned int target)
|
|||
static char ret[BUFFER_SIZE];
|
||||
|
||||
index = getTargetGnssType(target);
|
||||
if( index >= target_name_num || index < 0)
|
||||
if( index < 0 || (unsigned)index >= target_name_num )
|
||||
index = target_name_num - 1;
|
||||
|
||||
if( (target & HAS_SSC) == HAS_SSC ) {
|
||||
|
@ -168,7 +168,7 @@ RETURN VALUE
|
|||
The time string
|
||||
|
||||
===========================================================================*/
|
||||
char *loc_get_time(char *time_string, unsigned long buf_size)
|
||||
char *loc_get_time(char *time_string, size_t buf_size)
|
||||
{
|
||||
struct timeval now; /* sec and usec */
|
||||
struct tm now_tm; /* broken-down time */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2012, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2012, 2015 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
|
@ -36,12 +36,13 @@ extern "C"
|
|||
#endif
|
||||
|
||||
#include <ctype.h>
|
||||
#include <stdlib.h>
|
||||
#include "loc_target.h"
|
||||
|
||||
typedef struct
|
||||
{
|
||||
char name[128];
|
||||
long val;
|
||||
const char *name;
|
||||
long val;
|
||||
} loc_name_val_s_type;
|
||||
|
||||
#define NAME_VAL(x) {"" #x "", x }
|
||||
|
@ -49,17 +50,19 @@ typedef struct
|
|||
#define UNKNOWN_STR "UNKNOWN"
|
||||
|
||||
#define CHECK_MASK(type, value, mask_var, mask) \
|
||||
((mask_var & mask) ? (type) value : (type) (-1))
|
||||
(((mask_var) & (mask)) ? (type) (value) : (type) (-1))
|
||||
|
||||
#define LOC_TABLE_SIZE(table) (sizeof(table)/sizeof((table)[0]))
|
||||
|
||||
/* Get names from value */
|
||||
const char* loc_get_name_from_mask(loc_name_val_s_type table[], int table_size, long mask);
|
||||
const char* loc_get_name_from_val(loc_name_val_s_type table[], int table_size, long value);
|
||||
const char* loc_get_name_from_mask(const loc_name_val_s_type table[], size_t table_size, long mask);
|
||||
const char* loc_get_name_from_val(const loc_name_val_s_type table[], size_t table_size, long value);
|
||||
const char* loc_get_msg_q_status(int status);
|
||||
const char* loc_get_target_name(unsigned int target);
|
||||
|
||||
extern const char* log_succ_fail_string(int is_succ);
|
||||
|
||||
extern char *loc_get_time(char *time_string, unsigned long buf_size);
|
||||
extern char *loc_get_time(char *time_string, size_t buf_size);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue