mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-02 09:01:46 -05:00
add new API function pa_timeval_add()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2240 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
parent
566322ad30
commit
919bd98dff
2 changed files with 23 additions and 1 deletions
|
|
@ -148,6 +148,24 @@ struct timeval* pa_timeval_add(struct timeval *tv, pa_usec_t v) {
|
|||
return tv;
|
||||
}
|
||||
|
||||
struct timeval* pa_timeval_sub(struct timeval *tv, pa_usec_t v) {
|
||||
unsigned long secs;
|
||||
pa_assert(tv);
|
||||
|
||||
secs = (unsigned long) (v/PA_USEC_PER_SEC);
|
||||
tv->tv_sec -= secs;
|
||||
v -= ((pa_usec_t) secs) * PA_USEC_PER_SEC;
|
||||
|
||||
if (tv->tv_usec >= (suseconds_t) v)
|
||||
tv->tv_usec -= (suseconds_t) v;
|
||||
else {
|
||||
tv->tv_sec --;
|
||||
tv->tv_usec = tv->tv_usec + PA_USEC_PER_SEC - v;
|
||||
}
|
||||
|
||||
return tv;
|
||||
}
|
||||
|
||||
struct timeval* pa_timeval_store(struct timeval *tv, pa_usec_t v) {
|
||||
pa_assert(tv);
|
||||
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@
|
|||
***/
|
||||
|
||||
#include <pulse/cdecl.h>
|
||||
#include <pulse/gccmacro.h>
|
||||
#include <pulse/sample.h>
|
||||
|
||||
/** \file
|
||||
|
|
@ -54,7 +55,10 @@ int pa_timeval_cmp(const struct timeval *a, const struct timeval *b) PA_GCC_PURE
|
|||
pa_usec_t pa_timeval_age(const struct timeval *tv);
|
||||
|
||||
/** Add the specified time inmicroseconds to the specified timeval structure */
|
||||
struct timeval* pa_timeval_add(struct timeval *tv, pa_usec_t v) PA_GCC_PURE;
|
||||
struct timeval* pa_timeval_add(struct timeval *tv, pa_usec_t v);
|
||||
|
||||
/** Subtract the specified time inmicroseconds to the specified timeval structure. \since 0.9.11 */
|
||||
struct timeval* pa_timeval_sub(struct timeval *tv, pa_usec_t v);
|
||||
|
||||
/** Store the specified uec value in the timeval struct. \since 0.9.7 */
|
||||
struct timeval* pa_timeval_store(struct timeval *tv, pa_usec_t v);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue