|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. ! 3: * ! 4: * @APPLE_LICENSE_HEADER_START@ ! 5: * ! 6: * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights ! 7: * Reserved. This file contains Original Code and/or Modifications of ! 8: * Original Code as defined in and that are subject to the Apple Public ! 9: * Source License Version 1.1 (the "License"). You may not use this file ! 10: * except in compliance with the License. Please obtain a copy of the ! 11: * License at http://www.apple.com/publicsource and read it before using ! 12: * this file. ! 13: * ! 14: * The Original Code and all software distributed under the License are ! 15: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ! 16: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ! 17: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ! 18: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ! 19: * License for the specific language governing rights and limitations ! 20: * under the License. ! 21: * ! 22: * @APPLE_LICENSE_HEADER_END@ ! 23: */ ! 24: ! 25: /* ! 26: * Copyright (c) 1993, 1994, 1995 NeXT Computer, Inc. ! 27: * ! 28: * Declarations for thread-based callouts. ! 29: * ! 30: * HISTORY ! 31: * ! 32: * 8 June 1995 ? at NeXT ! 33: * Converted from old API naming and ! 34: * changed the time representation to ! 35: * tvalspec_t. ! 36: * ! 37: * 7 April 1994 ? at NeXT ! 38: * Added support for external and delayed ! 39: * entries. Cleaned up somewhat. ! 40: * 3 July 1993 ? at NeXT ! 41: * Created. ! 42: */ ! 43: ! 44: #ifndef _KERN_THREAD_CALL_H_ ! 45: #define _KERN_THREAD_CALL_H_ ! 46: ! 47: #import <mach/clock_types.h> ! 48: ! 49: typedef void *thread_call_spec_t; ! 50: typedef void *thread_call_t; ! 51: typedef void (*thread_call_func_t)( ! 52: thread_call_spec_t spec, ! 53: thread_call_t call ! 54: ); ! 55: ! 56: void ! 57: thread_call_init(void); ! 58: ! 59: tvalspec_t ! 60: deadline_from_interval( ! 61: tvalspec_t interval ! 62: ); ! 63: ! 64: void ! 65: thread_call_func( ! 66: thread_call_func_t func, ! 67: thread_call_spec_t spec, ! 68: boolean_t unique_call ! 69: ); ! 70: void ! 71: thread_call_func_delayed( ! 72: thread_call_func_t func, ! 73: thread_call_spec_t spec, ! 74: tvalspec_t deadline ! 75: ); ! 76: ! 77: void ! 78: thread_call_func_cancel( ! 79: thread_call_func_t func, ! 80: thread_call_spec_t spec, ! 81: boolean_t cancel_all ! 82: ); ! 83: ! 84: thread_call_t ! 85: thread_call_allocate( ! 86: thread_call_func_t func, ! 87: thread_call_spec_t spec ! 88: ); ! 89: void ! 90: thread_call_free( ! 91: thread_call_t call ! 92: ); ! 93: ! 94: void ! 95: thread_call_enter( ! 96: thread_call_t call ! 97: ); ! 98: void ! 99: thread_call_enter_spec( ! 100: thread_call_t call, ! 101: thread_call_spec_t spec ! 102: ); ! 103: void ! 104: thread_call_enter_delayed( ! 105: thread_call_t call, ! 106: tvalspec_t deadline ! 107: ); ! 108: void ! 109: thread_call_enter_spec_delayed( ! 110: thread_call_t call, ! 111: thread_call_spec_t spec, ! 112: tvalspec_t deadline ! 113: ); ! 114: void ! 115: thread_call_cancel( ! 116: thread_call_t call ! 117: ); ! 118: ! 119: #endif /* _KERN_THREAD_CALL_H_ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.