libXDispatch 0.3.1
include/libdispatch/dispatch.h
Go to the documentation of this file.
00001 /*
00002 * Copyright (c) 2008-2009 Apple Inc. All rights reserved.
00003 * Copyright (c) 2011 MLBA. All rights reserved.
00004 *
00005 * @MLBA_OPEN_LICENSE_HEADER_START@
00006 *
00007 * Licensed under the Apache License, Version 2.0 (the "License");
00008 * you may not use this file except in compliance with the License.
00009 * You may obtain a copy of the License at
00010 * 
00011 *     http://www.apache.org/licenses/LICENSE-2.0
00012 * 
00013 * Unless required by applicable law or agreed to in writing, software
00014 * distributed under the License is distributed on an "AS IS" BASIS,
00015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00016 * See the License for the specific language governing permissions and
00017 * limitations under the License.
00018 *
00019 * @MLBA_OPEN_LICENSE_HEADER_END@
00020 */
00021 
00022 
00023 #ifndef DISPATCH_H_
00024 #define DISPATCH_H_
00025 
00026 #ifdef __BLOCKS__
00027 #   include <dispatch/dispatch.h>
00028 #      define NSEC_PER_MSEC 1000000ll
00029 #else
00030 #      ifdef HAVE_NATIVE_DISPATCH_H
00031 #             include <dispatch/dispatch.h>
00032 #       include "dispatch_blocks.h"
00033 
00034 #             define NSEC_PER_MSEC 1000000ll
00035 
00036 /*#    elif defined(_GNUC__)
00037 #             warning "Working on support for this platform, but not completed yet"
00038 #      else
00039 #             pragma message("Working on support for this platform, but not completed yet")
00040 */
00041 #      endif
00042 
00043 #   if defined(__cplusplus)
00044 #       define __DISPATCH_BEGIN_DECLS     extern "C" {
00045 #       define __DISPATCH_END_DECLS       }
00046 #   else
00047 #       define __DISPATCH_BEGIN_DECLS
00048 #       define __DISPATCH_END_DECLS
00049 #   endif
00050 
00051 #   include <stddef.h>
00052 #   include <stdint.h>
00053 #   ifndef WIN32
00054 #       include <stdbool.h>
00055 #   endif
00056 #   include <stdarg.h>
00057 
00058 #   define DISPATCH_API_VERSION 20090501
00059 
00060 #   ifndef __DISPATCH_INDIRECT__
00061 #   define __DISPATCH_INDIRECT__
00062 #   endif
00063 
00064 #   include "base.h"
00065 #   include "object.h"
00066 #   include "time.h"
00067 #   include "queue.h"
00068 /* DISABLED UNTIL CLEAN IMPLEMENTATION IS AVAILABLE
00069 #include "source.h"
00070    */
00071 #   include "group.h"
00072 #   include "semaphore.h"
00073 #   include "once.h"
00074 
00075 #   undef __DISPATCH_INDIRECT__
00076 
00077 #endif // ELSE _BLOCKS_
00078 
00079 #endif /* DISPATCH_H_ */

Generated on Wed Feb 22 2012 19:43:56 for libXDispatch by Doxygen 1.7.4
Content © 2011-2012 MLBA (about | privacy) – Design © 2010-2012 Emzeat. All Rights reserved.