24 #import <Foundation/Foundation.h>
25 #import <scl/SCTypes.h>
26 #import <scl/SCObject.h>
27 #import <scl/SCStreamException.h>
28 #import <scl/SCSystemException.h>
29 #import <scl/SCStreaming.h>
32 #pragma mark Константы класса
37 #define SCStreamClass @"SCStream"
38 #define SC_STREAM_MAX_STRING_LENGTH 4096
43 #pragma mark Типы данных для поддержки потоков
250 id<SCStreamDelegate> fDelegate;
257 #pragma mark Свойства экземпляра класса
281 @property (nonatomic, retain, readonly, getter=
name) NSString *name;
287 @property (nonatomic, assign, readonly, getter=
opened) BOOL opened;
293 @property (nonatomic, assign, readonly, getter=
readable) BOOL readable;
299 @property (nonatomic, assign, readonly, getter=
writable) BOOL writable;
305 @property (nonatomic, assign, readonly, getter=
readOnly) BOOL readOnly;
311 @property (nonatomic, assign, readonly, getter=
writeOnly) BOOL writeOnly;
317 @property (nonatomic, assign, readonly, getter=
readWrite) BOOL readWrite;
323 @property (retain, readonly, getter=
object)
id object;
341 @property (nonatomic, assign, getter=
delegate, setter=setDelegate:) id<SCStreamDelegate> delegate;
362 @property (nonatomic, assign, readonly, getter=
eof) BOOL eof;
398 #pragma mark Доступ к свойствам экземпляра класса
416 #pragma mark Инициализация потоков
420 #pragma mark Чтение данных из потока
432 - (unichar)readUnichar;
433 - (const
char *)readCharString;
445 - (
SCUSize)readToChar:(
char *)buffer;
446 - (
SCUSize)readToUnichar:(unichar *)buffer;
448 - (
SCUSize)readToBool:(BOOL *)buffer;
453 #pragma mark Запись данных в поток
454 - (
SCUSize)writeBytes:(
SCUSize)count fromBuffer:(const
void *)buffer;
456 - (void)writeByte:(
SCByte)variable;
457 - (void)writeUByte:(
SCUByte)variable;
458 - (void)writeShort:(
SCShort)variable;
459 - (void)writeUShort:(
SCUShort)variable;
460 - (void)writeInteger:(
SCInteger)variable;
462 - (void)writeLong:(
SCLong)variable;
463 - (void)writeULong:(
SCULong)variable;
464 - (void)writeChar:(
char)variable;
465 - (void)writeUnichar:(unichar)variable;
466 - (void)writeCharString:(const
char *)variable;
467 - (void)writeBool:(BOOL)variable;
468 - (void)writeFloat:(
SCFloat)variable;
469 - (void)writeDouble:(
SCDouble)variable;
472 #pragma mark Поддержка текстовых файлов
473 - (NSString *)readStringWithEncoding:(NSStringEncoding)encoding max:(
SCUInteger)max;
474 - (NSString *)readStringWithEncoding:(NSStringEncoding)encoding;
475 - (NSString *)readStringWithMax:(
SCUInteger)max;
476 - (NSString *)readString;
477 - (void)writeString:(NSString *)string encoding:(NSStringEncoding)encoding;
478 - (void)writeString:(NSString *)string;
481 #pragma mark Позиционирование в потоках
485 #pragma mark Доступ к статистическим данным
uint64_t SCULong
Definition: SCTypes.h:78
int16_t SCShort
Definition: SCTypes.h:42
SCULong lastWrite
Definition: SCStream.h:393
Definition: SCStream.h:102
int64_t SCLong
Definition: SCTypes.h:54
BOOL readable
Definition: SCStream.h:293
Definition: SCStream.h:132
_SCStreamErrorHandling
Definition: SCStream.h:57
Definition: SCStream.h:138
Definition: SCStream.h:62
NSString * name
Definition: SCStream.h:281
SCStreamErrorHandling errorHandling
Definition: SCStream.h:269
int32_t SCInteger
Definition: SCTypes.h:48
SCStreamStatus status
Definition: SCStream.h:275
Definition: SCStream.h:156
SCULong totalWrite
Definition: SCStream.h:381
id< SCStreamDelegate > delegate
Definition: SCStream.h:341
uint32_t SCUInteger
Definition: SCTypes.h:72
Definition: SCStream.h:68
BOOL writable
Definition: SCStream.h:299
Definition: SCStream.h:144
_SCStreamStatus
Definition: SCStream.h:97
Definition: SCStream.h:162
int8_t SCByte
Definition: SCTypes.h:36
SCULong totalRead
Definition: SCStream.h:375
Streams events handling class.
Definition: SCStreamDelegate.h:51
SCSystemException * systemException
Definition: SCStream.h:335
uint16_t SCUShort
Definition: SCTypes.h:66
SCInteger SCStreamStatus
Stream status type.
Definition: SCStream.h:181
enum _SCStreamErrorHandling SCStreamErrorHandling
Stream error handling type.
Definition: SCStream.h:87
Parent class of all library classes.
Definition: SCObject.h:57
uint8_t SCUByte
Definition: SCTypes.h:60
id object
Definition: SCStream.h:323
Definition: SCStream.h:126
Definition: SCStream.h:108
Definition: SCStream.h:114
System error exception class.
Definition: SCSystemException.h:85
Definition: SCStream.h:74
size_t SCUSize
Definition: SCTypes.h:221
float_t SCFloat
Definition: SCTypes.h:84
Definition: SCStream.h:120
BOOL writeOnly
Definition: SCStream.h:311
Streams communications protocol.
Definition: SCStreaming.h:40
BOOL eof
Definition: SCStream.h:362
Exception class SCStreamException.
Definition: SCStreamException.h:163
SCStreamException * streamException
Definition: SCStream.h:329
Definition: SCStream.h:168
Definition: SCStream.h:150
BOOL readWrite
Definition: SCStream.h:317
BOOL readOnly
Definition: SCStream.h:305
SCULong lastRead
Definition: SCStream.h:387
double_t SCDouble
Definition: SCTypes.h:90
Abstract parent class of the stream classes hierarchy.
Definition: SCStream.h:242
BOOL opened
Definition: SCStream.h:287