This is MPEGThread.h in view mode; [Download] [Up]
// MPEGThread.h -
#include <sys/types.h>
#include <sys/time.h>
#import <mach/cthreads.h>
#import <libc.h>
#import <streams/streams.h>
#import <appkit/View.h>
#import <objc/Object.h>
#define FCODE_ABORT -1
#define FCODE_END 0
#define FP_NUM_INT_DATA 1
typedef struct _mpegPacket
{
msg_header_t h;
msg_type_t t;
int fcode;
} mpegPacket;
@interface MPEGThread:Object
{
id view;
id controller;
int frameSize;
port_t mpegPort;
cthread_t cthreadMain;
FILE *ifp; // decode
char *buffer;
NXStream *pStream, *mStream;
char *address; // video cache
int len, maxlen;
}
/*** Initialization methods ***/
- initSize:(int)size forView:anObject;
- free;
/*** Instance methods and Standard C wrapper functions ***/
void receive_fcode(mpegPacket *, id);
- receiveFcode:(mpegPacket *)pkt;
- decodeFile:(const char *)mpegFile;
any_t mpeg_thread(any_t);
- mpegThread;
- endDecode;
- abortDecode;
@end
@interface Object(MPEGThreadDelegate)
- setFrameNumber:(int)frame;
@end
@interface View(MPEGThreadView)
- setAddress:(char *)anAddress len:(int)aLen maxlen:(int)aMaxlen;
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.