/****************************************************************************** | |
* | |
* Copyright (C) 2018 ST Microelectronics S.A. | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at: | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software | |
* distributed under the License is distributed on an "AS IS" BASIS, | |
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
* See the License for the specific language governing permissions and | |
* limitations under the License. | |
* | |
* | |
******************************************************************************/ | |
#include "Utils.h" | |
#include <stdio.h> | |
#include "android_logmsg.h" | |
/******************************************************************************* | |
** | |
** Function Utils_charArrayToHexString | |
** | |
** Description Converts the given char array into its HEX-based string | |
** representation. | |
** | |
** Parameters array - char array to be converted. | |
** length - length of the char array. | |
** hexString - Output hex string buffer. | |
** | |
** Returns 0 on successful conversion, -1 otherwise. | |
** | |
*******************************************************************************/ | |
int Utils_charArrayToHexString(char* array, int length, char* hexString) { | |
char* ptr = hexString; | |
int i; | |
for (i = 0; i < length; i++) { | |
ptr += sprintf(ptr, "%02X ", array[i]); | |
} | |
return 0; | |
} | |
/******************************************************************************* | |
** | |
** Function Utils_getElapsedTimeInMs | |
** | |
** Description Returns the difference of time (in ms) between t1 and t2. | |
** | |
** Parameters t1 - initial time. | |
** t2 - final time. | |
** | |
** Returns The difference t2 - t1 in ms. | |
** | |
*******************************************************************************/ | |
int Utils_getElapsedTimeInMs(struct timeval t1, struct timeval t2) { | |
return (t2.tv_sec - t1.tv_sec) * 1000 + (t2.tv_usec - t1.tv_usec) / 1000; | |
} | |
/******************************************************************************* | |
** | |
** Function Utils_printCurrentTime | |
** | |
** Description Prints current time to standard log. | |
** | |
** Parameters prefix- The prefix to be printed before the time. | |
** | |
** Returns void | |
** | |
*******************************************************************************/ | |
void Utils_printCurrentTime(char* prefix) { | |
struct timeval currentTime; | |
gettimeofday(¤tTime, 0); | |
STLOG_HAL_V("SpiTiming: %s: %ld,%ld", prefix, currentTime.tv_sec, | |
currentTime.tv_usec); | |
} |