This is PageSupplier.h in view mode; [Download] [Up]
/* (c) 1992 Dirk Schwarzhans, Matthias Braun Use under the terms of the GNU General Public License */ #import <cthreads.h> #import <mach.h> #import <objc/Object.h> #import <objc/HashTable.h> #import <objc/Storage.h> #import <appkit/Window.h> #import "pageNumber.h" #import "VTSpeaker.h" typedef struct { const unsigned char *data; Window *window; unsigned tag; } PagePacket; @interface PageSupplier:Object { port_t dev_port, owner_port, cmd_port, read_port, reply_port; // Ports för den DSP VTSpeaker *speaker; port_t speakerReplyPort; // Zwischenspeicher der DSPThread char clockString[9]; char pageString[4]; BOOL interruptedSequenz; // Kommunikationsbreich zwischen Hauptthread und DSPThread volatile BOOL clockMessages; // Uhr eingeschaltet volatile BOOL pageMessages; // Seitennummern an mutex_t memoryInUse; // för die folgenden Daten HashTable *allPages; HashTable *windowTable; Window *actualWindow; volatile unsigned tag; // Zwischenspeicher, wenn momentan bearbeitete Seite ankommt volatile BOOL depositValid; // Seite unterwegs volatile VTPageNumber depositPage; // Seitennummer volatile VTSubpageNumber depositSubpage; // Unterseitennummer volatile BOOL depositFull; // angekommen Storage *deposit; // eigentliche Daten volatile BOOL threadsAborted; volatile BOOL DSPThreadAborted; // Kommunikationsbereich zwischen DSPThread und comThread mutex_t comMem; // Mutex zum Schutz condition_t comMemChanged; volatile BOOL pageReady; // Seite angekommen volatile PagePacket pagePacket; // Seitendaten volatile BOOL clockReady; // Uhr angekommen volatile char clockString2[9]; // Uhrendaten volatile BOOL pageNumReady; // Seitennummer angek. volatile char pageString2[4]; // Seitennummer volatile BOOL error; // Fehler oder Abbruch volatile char *errorString; // NULL bei Abbruch mutex_t sending; // Senden an DSP aktiv } - init; // nicht sehr sinnvoll - initPort:(port_t)port; - stopThreads; - free; - requestClockMessages:(BOOL)flag; - requestPageMessages:(BOOL)flag; - writeModeRegister:(unsigned char)data; - writeDisplayControlRegisters:(unsigned char)normal:(unsigned char)news; - writeDisplayModeRegister:(unsigned char)data; - (unsigned)forgetAll; - (unsigned)setMainWindow:(Window *)window; - (unsigned)windowClosed:(Window *)window; - (unsigned)pageRequest:(VTPageNumber)number; - (unsigned)pageRequest:(VTPageNumber)page subpage:(VTSubpageNumber)subpage; - (unsigned)doCareSubpage:(VTSubpageNumber)number; - (unsigned)dontCareSubpage; - (unsigned)holdPage:(BOOL)hold; - (unsigned)nextSubpage:(VTSubpageNumber *)requested; - (unsigned)previousSubpage:(VTSubpageNumber *)requested; @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.