Main Page
Namespaces
Classes
Files
File List
File Members
sdk
src
arch
macOS
macOS/timer.h
Go to the documentation of this file.
1
/*
2
* RPLIDAR SDK
3
*
4
* Copyright (c) 2009 - 2014 RoboPeak Team
5
* http://www.robopeak.com
6
* Copyright (c) 2014 - 2018 Shanghai Slamtec Co., Ltd.
7
* http://www.slamtec.com
8
*
9
*/
10
/*
11
* Redistribution and use in source and binary forms, with or without
12
* modification, are permitted provided that the following conditions are met:
13
*
14
* 1. Redistributions of source code must retain the above copyright notice,
15
* this list of conditions and the following disclaimer.
16
*
17
* 2. Redistributions in binary form must reproduce the above copyright notice,
18
* this list of conditions and the following disclaimer in the documentation
19
* and/or other materials provided with the distribution.
20
*
21
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
23
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
24
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
25
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
27
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
28
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
29
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
30
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
31
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
*
33
*/
34
35
#pragma once
36
37
#include "
rptypes.h
"
38
39
#include <unistd.h>
40
static
inline
void
delay
(
_word_size_t
ms){
41
while
(ms>=1000){
42
usleep(1000*1000);
43
ms-=1000;
44
};
45
if
(ms!=0)
46
usleep(ms*1000);
47
}
48
49
// TODO: the highest timer interface should be clock_gettime
50
namespace
rp
{
namespace
arch{
51
52
_u64
rp_getus
();
53
_u32
rp_getms
();
54
55
}}
56
57
#define getms() rp::arch::rp_getms()
rp::arch::rp_getus
_u64 rp_getus()
Definition:
linux/timer.cpp:38
delay
static void delay(_word_size_t ms)
Definition:
macOS/timer.h:40
rptypes.h
_word_size_t
typedef _word_size_t(THREAD_PROC *thread_proc_t)(void *)
rp
Definition:
rplidar_driver.h:53
_u32
uint32_t _u32
Definition:
rptypes.h:69
_u64
uint64_t _u64
Definition:
rptypes.h:72
rp::arch::rp_getms
_u32 rp_getms()
Definition:
linux/timer.cpp:45
rplidar_ros
Author(s):
autogenerated on Wed Jan 1 2020 04:01:40