This is SignalMgr.m in view mode; [Download] [Up]
/* Generated by Interface Builder */ #import "SignalMgr.h" #import <objc/List.h> #import <signal.h> #import <libc.h> static id _SignalMgrObject = nil ; void interruptHandler ( void ) { [ _SignalMgrObject interrupt ] ; return ; } struct sigvec _SignalMgrVec = { interruptHandler, 0, SIGUSR1 } ; @implementation SignalMgr + new { if ( ! _SignalMgrObject ) { _SignalMgrObject = [ [ super alloc ] init ] ; sigvec ( SIGUSR1, &_SignalMgrVec, 0 ) ; } return _SignalMgrObject ; } - alloc { [ self error: "SignalMgr: ALLOC not allowed on single instance classes.\n" ] ; return nil ; } - init { objectList = [ [ List alloc ] init ] ; return self ; } - addObject: anObject { [ objectList addObject: anObject ] ; return self ; } - removeObject: anObject { [ objectList removeObject: anObject ] ; return self ; } - interrupt { [ objectList makeObjectsPerform: @selector ( interrupt ) ] ; return self ; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.