/usr/include/GNUstep/Foundation/NSDistributedNotificationCenter.h is in libgnustep-base-dev 1.24.0-1ubuntu3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 | /* Interface of NSDistributedNotificationCenter class
Copyright (C) 1998 Free Software Foundation, Inc.
Written by: Richard Frith-Macdonald <richard@brainstorm.co.uk>
Created: October 1998
This file is part of the GNUstep Base Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDistributedNotificationCenter_h_GNUSTEP_BASE_INCLUDE
#define __NSDistributedNotificationCenter_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#import <Foundation/NSObject.h>
#import <Foundation/NSLock.h>
#import <Foundation/NSNotification.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
* Enumeration of possible values for specifying how
* [NSDistributedNotificationCenter] deals with notifications when the
* process to which the notification should be delivered is suspended:
<example>
{
NSNotificationSuspensionBehaviorDrop, // drop the notification
NSNotificationSuspensionBehaviorCoalesce, // drop all for this process but the latest-sent notification
NSNotificationSuspensionBehaviorHold, // queue all notifications for this process until it is resumed
NSNotificationSuspensionBehaviorDeliverImmediately // resume the process and deliver
}
</example>
*/
enum {
NSNotificationSuspensionBehaviorDrop = 1,
NSNotificationSuspensionBehaviorCoalesce = 2,
NSNotificationSuspensionBehaviorHold = 3,
NSNotificationSuspensionBehaviorDeliverImmediately = 4
};
typedef NSUInteger NSNotificationSuspensionBehavior;
/**
* Type for [NSDistributedNotificationCenter+notificationCenterForType:] -
* localhost current user broadcast only. This is the only type on OS X.
*/
GS_EXPORT NSString* const NSLocalNotificationCenterType;
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* Type of [NSDistributedNotificationCenter+notificationCenterForType:] -
* all users on the local host. This type is available only on GNUstep.
*/
GS_EXPORT NSString* const GSPublicNotificationCenterType;
/**
* Type of [NSDistributedNotificationCenter+notificationCenterForType:] -
* localhost and LAN broadcast. This type is available only on GNUstep.
*/
GS_EXPORT NSString* const GSNetworkNotificationCenterType;
#endif
@interface NSDistributedNotificationCenter : NSNotificationCenter
{
#if GS_EXPOSE(NSDistributedNotificationCenter)
NSRecursiveLock *_centerLock; /* For thread safety. */
NSString *_type; /* Type of notification center. */
id _remote; /* Proxy for center. */
BOOL _suspended; /* Is delivery suspended? */
#endif
#if GS_NONFRAGILE
#else
/* Pointer to private additional data used to avoid breaking ABI
* when we don't have the non-fragile ABI available.
* Use this mechanism rather than changing the instance variable
* layout (see Source/GSInternal.h for details).
*/
@private id _internal GS_UNUSED_IVAR;
#endif
}
+ (NSNotificationCenter*) defaultCenter;
+ (NSNotificationCenter*) notificationCenterForType: (NSString*)type;
- (void) addObserver: (id)anObserver
selector: (SEL)aSelector
name: (NSString*)notificationName
object: (NSString*)anObject;
- (void) addObserver: (id)anObserver
selector: (SEL)aSelector
name: (NSString*)notificationName
object: (NSString*)anObject
suspensionBehavior: (NSNotificationSuspensionBehavior)suspensionBehavior;
- (void) postNotification: (NSNotification*)notification;
- (void) postNotificationName: (NSString*)notificationName
object: (NSString*)anObject;
- (void) postNotificationName: (NSString*)notificationName
object: (NSString*)anObject
userInfo: (NSDictionary*)userInfo;
- (void) postNotificationName: (NSString*)notificationName
object: (NSString*)anObject
userInfo: (NSDictionary*)userInfo
deliverImmediately: (BOOL)deliverImmediately;
- (void) removeObserver: (id)anObserver
name: (NSString*)notificationName
object: (NSString*)anObject;
- (void) setSuspended: (BOOL)flag;
- (BOOL) suspended;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif
|