Something went wrong. Try again.
Cider Isn't Darwin Emulation, Really
Something went wrong. Try again.
2.5 kB · 91 lines
C
at android
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192/* * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. * * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * * This file contains Original Code and/or Modifications of Original Code * as defined in and that are subject to the Apple Public Source License * Version 2.0 (the 'License'). You may not use this file except in * compliance with the License. The rights granted to you under the License * may not be used to create, or enable the creation or redistribution of, * unlawful or unlicensed copies of an Apple operating system, or to * circumvent, violate, or enable the circumvention or violation of, any * terms of an Apple operating system software license agreement. * * Please obtain a copy of the License at * http://www.opensource.apple.com/apsl/ and read it before using this file. * * The Original Code and all software distributed under the License are * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. * Please see the License for the specific language governing rights and * limitations under the License. * * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ *//* * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. * * HISTORY * */
#ifndef _OS_OSBASE_H#define _OS_OSBASE_H
#include <sys/cdefs.h>
#include <libkern/OSTypes.h>
#include <stdint.h>
__BEGIN_DECLS
#ifdef KERNEL_PRIVATE
OS_INLINEuint64_t__OSAbsoluteTime( AbsoluteTime abstime){ return (*(uint64_t *)&abstime);}
OS_INLINEuint64_t *__OSAbsoluteTimePtr( AbsoluteTime *abstime){ return ((uint64_t *)abstime);}
#define AbsoluteTime_to_scalar(x) (*(uint64_t *)(x))
/* t1 < = > t2 */#define CMP_ABSOLUTETIME(t1, t2) \ (AbsoluteTime_to_scalar(t1) > \ AbsoluteTime_to_scalar(t2)? (int)+1 : \ (AbsoluteTime_to_scalar(t1) < \ AbsoluteTime_to_scalar(t2)? (int)-1 : 0))
/* t1 += t2 */#define ADD_ABSOLUTETIME(t1, t2) \ (AbsoluteTime_to_scalar(t1) += \ AbsoluteTime_to_scalar(t2))
/* t1 -= t2 */#define SUB_ABSOLUTETIME(t1, t2) \ (AbsoluteTime_to_scalar(t1) -= \ AbsoluteTime_to_scalar(t2))
#define ADD_ABSOLUTETIME_TICKS(t1, ticks) \ (AbsoluteTime_to_scalar(t1) += \ (int32_t)(ticks))
#endif /* KERNEL_PRIVATE */
__END_DECLS
#endif /* _OS_OSBASE_H */