/*
* Private threading definitions for CUPS.
*
- * Copyright 2009-2016 by Apple Inc.
+ * Copyright 2009-2017 by Apple Inc.
*
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
+ * Licensed under Apache License v2.0. See the file "LICENSE" for more information.
*/
#ifndef _CUPS_THREAD_PRIVATE_H_
*/
# include "config.h"
+# include <cups/versioning.h>
/*
# define _cupsThreadGetData(k) pthread_getspecific(k)
# define _cupsThreadSetData(k,p) pthread_setspecific(k,p)
-# elif defined(WIN32) /* Windows threading */
+# elif defined(_WIN32) /* Windows threading */
# include <winsock2.h>
# include <windows.h>
typedef void *(__stdcall *_cups_thread_func_t)(void *arg);
* Functions...
*/
-extern void _cupsCondBroadcast(_cups_cond_t *cond);
-extern void _cupsCondInit(_cups_cond_t *cond);
-extern void _cupsCondWait(_cups_cond_t *cond, _cups_mutex_t *mutex, double timeout);
-extern void _cupsMutexInit(_cups_mutex_t *mutex);
-extern void _cupsMutexLock(_cups_mutex_t *mutex);
-extern void _cupsMutexUnlock(_cups_mutex_t *mutex);
-extern void _cupsRWInit(_cups_rwlock_t *rwlock);
-extern void _cupsRWLockRead(_cups_rwlock_t *rwlock);
-extern void _cupsRWLockWrite(_cups_rwlock_t *rwlock);
-extern void _cupsRWUnlock(_cups_rwlock_t *rwlock);
-extern void _cupsThreadCancel(_cups_thread_t thread);
-extern _cups_thread_t _cupsThreadCreate(_cups_thread_func_t func, void *arg);
-extern void *_cupsThreadWait(_cups_thread_t thread);
+extern void _cupsCondBroadcast(_cups_cond_t *cond) _CUPS_PRIVATE;
+extern void _cupsCondInit(_cups_cond_t *cond) _CUPS_PRIVATE;
+extern void _cupsCondWait(_cups_cond_t *cond, _cups_mutex_t *mutex, double timeout) _CUPS_PRIVATE;
+extern void _cupsMutexInit(_cups_mutex_t *mutex) _CUPS_PRIVATE;
+extern void _cupsMutexLock(_cups_mutex_t *mutex) _CUPS_PRIVATE;
+extern void _cupsMutexUnlock(_cups_mutex_t *mutex) _CUPS_PRIVATE;
+extern void _cupsRWInit(_cups_rwlock_t *rwlock) _CUPS_PRIVATE;
+extern void _cupsRWLockRead(_cups_rwlock_t *rwlock) _CUPS_PRIVATE;
+extern void _cupsRWLockWrite(_cups_rwlock_t *rwlock) _CUPS_PRIVATE;
+extern void _cupsRWUnlock(_cups_rwlock_t *rwlock) _CUPS_PRIVATE;
+extern void _cupsThreadCancel(_cups_thread_t thread) _CUPS_PRIVATE;
+extern _cups_thread_t _cupsThreadCreate(_cups_thread_func_t func, void *arg) _CUPS_PRIVATE;
+extern void _cupsThreadDetach(_cups_thread_t thread) _CUPS_PRIVATE;
+extern void *_cupsThreadWait(_cups_thread_t thread) _CUPS_PRIVATE;
# ifdef __cplusplus
}