home *** CD-ROM | disk | FTP | other *** search
- //
- // MiscXmodem.h: spawn and control a thread performing a XMODEM file transfer
- // Written by Eric Norum Copyright (c) 1994 by Eric Norum.
- // Version 1.0. All rights reserved.
- // This notice may not be removed from this source code.
- //
- // This object is included in the MiscKit by permission from the author
- // and its use is governed by the MiscKit license, found in the file
- // "LICENSE.rtf" in the MiscKit distribution. Please refer to that file
- // for a list of all applicable permissions and restrictions.
- //
-
- #import <appkit/appkit.h>
- /* #import <misckit/misckit.h> /* */
-
- @interface MiscXmodem:Object
- {
- BOOL isActive;
- BOOL isText;
- BOOL use1kPackets;
- BOOL isDynamicCheck;
- BOOL useCRC;
-
- MiscSerialPort *serialPort;
- BOOL serialPortWasSuspended;
- int fd;
- fd_set checkFdSet;
- NXStream *stream;
-
- cthread_t xmodemThread;
- port_t messagePort;
- port_t replyPort;
- id delegate;
-
- unsigned char packetBuffer[1024+5];
- unsigned char smallPacketData[1024];
- int smallPacketIndex;
- int smallPacketCount;
- BOOL newlineFlag;
-
- BOOL isDynamicCheckPacket;
- int lastPacketNumber;
- int goodPacketCount;
- float kbytes;
- }
-
- - init;
- - free;
-
- - setFileTypeText:(BOOL)flag;
- - xmodemSet1kPackets:(BOOL)flag;
- - xmodemSetCheckTypeDynamic:(BOOL)flag;
- - xmodemSetCheckTypeCRC:(BOOL)flag;
- - (BOOL)isFileTypeText;
- - (BOOL)xmodemIs1kPackets;
- - (BOOL)xmodemIsCheckTypeDynamic;
- - (BOOL)xmodemIsCheckTypeCRC;
-
- - sendToSerialPort:serialPort fromStream:(NXStream *)aStream;
- - sendToStream:(NXStream *)aStream fromSerialPort:serialPort;
- - (BOOL)isActive;
-
- - setDelegate:id;
- - delegate;
-
- /*
- * Delegate methods
- */
- - didTransferPacket:(int)anInt kbytes:(float)aFloat;
- - didRetryNumber:(int)anInt;
- - didFinish:(const char *)failureCode;
-
- @end
-