Samond Classes Library 1.2.1-RELEASE build 181
Полный список членов класса
Класс SCStream

Абстрактный класс потоков библиотеки Подробнее...

#import <SCStream.h>

Граф наследования:SCStream:
SCObject SCFileStream SCNullStream SCStandardErrorStream SCStandardInputStream SCStandardOutputStream

Свойства экземпляра класса

SCStreamErrorHandling errorHandling
 
SCStreamStatus status
 
NSString * name
 
BOOL opened
 
BOOL readable
 
BOOL writable
 
BOOL readOnly
 
BOOL writeOnly
 
BOOL readWrite
 
id object
 
SCStreamExceptionstreamException
 
SCSystemExceptionsystemException
 
id< SCStreamDelegatedelegate
 
(void) - setErrorHandling:
 
(void) - setDelegate:
 

Инициализация потоков

(instancetype) - init
 

Чтение данных из потока

(SCSize- readBytes:toBuffer:
 
(id) - readObject
 
(SCByte- readByte
 
(SCUByte- readUByte
 
(SCShort- readShort
 
(SCUShort- readUShort
 
(SCInteger- readInteger
 
(SCUInteger- readUInteger
 
(SCLong- readLong
 
(SCULong- readULong
 
(char) - readChar
 
(unichar) - readUnichar
 
(const char *) - readCharString
 
(BOOL) - readBool
 
(SCFloat- readFloat
 
(SCDouble- readDouble
 
(NSInteger) - readNSInteger
 
(NSUInteger) - readNSUInteger
 
(SCSize- readToByte:
 
(SCSize- readToUByte:
 
(SCSize- readToShort:
 
(SCSize- readToUShort:
 
(SCSize- readToInteger:
 
(SCSize- readToUInteger:
 
(SCSize- readToLong:
 
(SCSize- readToULong:
 
(SCSize- readToChar:
 
(SCSize- readToUnichar:
 
(SCSize- readToCharString:max:
 
(SCSize- readToBool:
 
(SCSize- readToFloat:
 
(SCSize- readToDouble:
 
(SCSize- readToNSInteger:
 
(SCSize- readToNSUInteger:
 

Запись данных в поток

(SCSize- writeBytes:fromBuffer:
 
(void) - writeObject:
 
(void) - writeByte:
 
(void) - writeUByte:
 
(void) - writeShort:
 
(void) - writeUShort:
 
(void) - writeInteger:
 
(void) - writeUInteger:
 
(void) - writeLong:
 
(void) - writeULong:
 
(void) - writeChar:
 
(void) - writeUnichar:
 
(void) - writeCharString:
 
(void) - writeBool:
 
(void) - writeFloat:
 
(void) - writeDouble:
 
(void) - writeNSInteger:
 
(void) - writeNSUInteger:
 

Поддержка текстовых файлов

(NSString *) - readStringWithEncoding:max:
 
(NSString *) - readStringWithEncoding:
 
(NSString *) - readStringWithMax:
 
(NSString *) - readString
 
(void) - writeString:encoding:
 
(void) - writeString:
 

Позиционирование в потоках

BOOL eof
 

Доступ к статистическим данным

SCULong totalRead
 
SCULong totalWrite
 
SCULong lastRead
 
SCULong lastWrite
 
(void) - resetStats
 

Дополнительные унаследованные члены

- Методы экземпляра унаследованные от SCObject
(instancetype) - initWithCoder:
 
(instancetype) - initWithContentsOfSerializedFile:
 
(void) - encodeWithCoder:
 
(BOOL) - writeContentsToSerializedFile:
 
(instancetype) - initWithDataDictionary:
 
(instancetype) - initWithDataDictionaryFromFile:
 
(void) - writeToDataDictionary:
 
(void) - writeToDataDictionaryFile:atomically:
 
(void) - writeToDataDictionaryFile:
 
(NSDictionary *) - dataDictionary
 
(instancetype) - initWithStream:
 
(instancetype) - initWithFileStream:
 
(void) - writeToStream:
 
(void) - writeToFileStream:
 
(void) - appendToFileStream:
 
(id) - copyObject
 
(SCComparisonResult- compareWithObject:
 
(BOOL) - isEqual:
 

Подробное описание

Абстрактный класс потоков библиотеки

SDK
macOS 10.6+, iOS 7.0+, GNUstep
Начиная с
версии 1.1.3

Объявляет методы для поддержки операций с потоками библиотеки.
При работе экземпляров класса и его потомков возможно возникновение следующих ошибок:

В будещем планируется реализовать следующие классы-потомки:

Необходимо сделать:

SCZeroStream - класс потока считывающего нулевые данные (/dev/zero)

SCRandomStream - класс потока случайных данных (/dev/random)

SCMemoryStream - класс потока в оперативной памяти

SCSharedMemoryStream - класс потока в разделяемой памяти

Утилиты просмотра файлов потоков

Документация метода

- (instancetype) init

Метод инициализации потока с использованием значений параметров по умолчанию.

Внимание
Является назначенным инициализатором класса
Возвращает
Инициализированный поток

Переопределяется в SCFileStream, SCStandardErrorStream, SCNullStream, SCStandardInputStream и SCStandardOutputStream.

- (BOOL) readBool

Метод возвращает загруженное из потока логическое значение.

Возвращает
Загруженное логическое значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCByte) readByte

Метод возвращает загруженное из потока 8-битное знаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readBytes: (SCSize count
toBuffer: (void *)  buffer 

Метод считывает заданное количество байт в указанный буфер.

Аргументы
count- число байт для считывания из потока
buffer- указатель на буфер для считанных данных
Возвращает
Реально считанное из потока количество байт
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка

Переопределяется в SCFileStream.

- (char) readChar

Метод возвращает загруженный из потока символ.

Возвращает
Загруженный символ
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
См. также
- readUnichar
- (const char *) readCharString

Метод возвращает считанную из потока строку символов.

Возвращает
Загруженная строка символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCDouble) readDouble

Метод возвращает загруженное из потока значение с плавающей точкой двойной точности.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCFloat) readFloat

Метод возвращает загруженное из потока значение с плавающей точкой одинарной точности.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCInteger) readInteger

Метод возвращает загруженное из потока 32-битное знаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCLong) readLong

Метод возвращает загруженное из потока 64-битное знаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (NSInteger) readNSInteger

Метод возвращает загруженное из потока значение NSInteger.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (NSUInteger) readNSUInteger

Метод возвращает загруженное из потока значение NSUInteger.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (id) readObject

Метод создает и инициализирует экземпляр класса на основе считанных из потока данных.

Возвращает
Инициализированный экземпляр класса или nil при возникновении ошибки
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCShort) readShort

Метод возвращает загруженное из потока 16-битное знаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (NSString *) readString

Метод возвращает строку с загруженными в нее данными с использованием кодировки UTF-8.

Возвращает
Загруженная строка или nil при возникновении ошибки или окончании потока
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (NSString *) readStringWithEncoding: (NSStringEncoding)  encoding

Метод возвращает строку с загруженными в нее данными с использованием заданной кодировки.

Аргументы
encoding- кодировка загружаемой строки
Возвращает
Загруженная строка или nil при возникновении ошибки или окончании потока
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (NSString *) readStringWithEncoding: (NSStringEncoding)  encoding
max: (SCInteger max 

Метод возвращает строку с загруженными в нее данными с использованием указанных кодировки и максимальной длины.

Аргументы
encoding- кодировка загружаемой строки
max- максимальная длина строки
Возвращает
Загруженная строка или nil при возникновении ошибки или окончании потока
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (NSString *) readStringWithMax: (SCInteger max

Метод возвращает строку с загруженными в нее данными с использованием кодировки UTF-8 и заданной максимальной длиной.

Аргументы
max- максимальная длина строки
Возвращает
Загруженная строка или nil при возникновении ошибки или окончании потока
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToBool: (BOOL *)  buffer

Метод загружает в заданный буфер из потока логическое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToByte: (SCByte *)  buffer

Метод загружает из потока в указаный буфер 8-битное знаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToChar: (char *)  buffer

Метод загружает из потока в указанный буфер символ.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
См. также
- readToUnichar:
- (SCSize) readToCharString: (char *)  buffer
max: (SCSize max 

Метод загружает из потока строку символов в указанный буфер.

Аргументы
buffer- указатель на буфер для загрузки данных
max- максимальное количество символов в строке
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToDouble: (SCDouble *)  buffer

Метод загружает в указанный буфер из потока значение с плавающей точкой двойной точности.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToFloat: (SCFloat *)  buffer

Метод загружает в указанный буфер из потока значение с плавающей точкой одинарной точности.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToInteger: (SCInteger *)  buffer

Метод загружает из потока в указанный буфер 32-битное знаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToLong: (SCULong *)  buffer

Метод загружает из потока в указанный буфер 64-битное знаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToNSInteger: (NSInteger *)  buffer

Метод загружает в указанный буфер из потока значение NSInteger.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToNSUInteger: (NSUInteger *)  buffer

Метод загружает в указанный буфер из потока значение NSUInteger.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToShort: (SCShort *)  buffer

Метод загружает из потока в указанный буфер 16-битное знаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToUByte: (SCUByte *)  buffer

Метод загружает из потока в указанный буфер 8-битное беззнаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToUInteger: (SCUInteger *)  buffer

Метод загружает из потока в указанный буфер 32-битное беззнаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToULong: (SCULong *)  buffer

Метод загружает из потока в указанный буфер 64-битное беззнаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) readToUnichar: (unichar *)  buffer

Метод загружает из потока в указанный буфер символ.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
См. также
- readToChar:
- (SCSize) readToUShort: (SCUShort *)  buffer

Метод загружает из потока в указанный буфер 16-битное беззнаковое целое значение.

Аргументы
buffer- указатель на буфер для загрузки данных
Возвращает
Реально считанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCUByte) readUByte

Метод возвращает загруженное из потока 8-битное беззнаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCUInteger) readUInteger

Метод возвращает загруженное из потока 32-битное беззнаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCULong) readULong

Метод возвращает загруженное из потока 64-битное беззнаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (unichar) readUnichar

Метод возвращает загруженный из потока символ.

Возвращает
Загруженный символ
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
См. также
- readChar
- (SCUShort) readUShort

Метод возвращает загруженное из потока 16-битное беззнаковое целое значение.

Возвращает
Загруженное значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) resetStats

Метод сбрасывает статистику потока.

- (void) setDelegate: (id<SCStreamDelegate>)  delegate

Метод устанавливает обработчик событий потока.

Аргументы
delegate- обработчик событий потока
- (void) setErrorHandling: (SCStreamErrorHandling mode

Метод устанавливает режим обработки ошибок потока.

Аргументы
mode- режим обработки ошибок:
  • SCStreamErrorHandlingSystem - генерируется исключительная ситуация системной ошибки
  • SCStreamErrorHandlingStream - генерируется исключительная ситуация ошибки потока
  • SCStreamErrorHandlingStatus - изменение статуса потока и вызов обработчика ошибок
- (void) writeBool: (BOOL)  variable

Метод записывает в поток указанное логическое значение.

Аргументы
variable- записываемое значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeByte: (SCByte variable

Метод записывает в поток указанное 8-битное знаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (SCSize) writeBytes: (SCSize count
fromBuffer: (const void *)  buffer 

Метод записывает в поток заданное количество символов из указанного буфера.

Аргументы
count- количество символов для записи в поток
buffer- указатель на буфер с данными для записи
Возвращает
Реально записанное количество символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка

Переопределяется в SCFileStream.

- (void) writeChar: (char)  variable

Метод записывает в поток указанный символ.

Аргументы
variable- символ для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
См. также
- writeUnichar:
- (void) writeCharString: (const char *)  variable

Метод записывает в поток указанную строку символов.

Аргументы
variable- записываемая строка символов
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeDouble: (SCDouble variable

Метод записывает в поток указанное значение с плавающей точкой двойной точности.

Аргументы
variable- записываемое значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeFloat: (SCFloat variable

Метод записывает в поток указанное значение с плавающей точкой одинарной точности.

Аргументы
variable- записываемое значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeInteger: (SCInteger variable

Метод записывает в поток указанное 32-битное знаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeLong: (SCLong variable

Метод записывает в поток указанное 64-битное знаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeNSInteger: (NSInteger)  variable

Метод записывает в поток указанное значение типа NSInteger.

Аргументы
variable- записываемое значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeNSUInteger: (NSUInteger)  variable

Метод записывает в поток указанное значение типа NSUInteger.

Аргументы
variable- записываемое значение
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeObject: (id<SCStreaming>)  object

Метод записывает в поток указанный экземпляр класса.

Аргументы
object- экземпляр класса для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeShort: (SCShort variable

Метод записывает в поток указанное 16-битное знаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeString: (NSString *)  string

Метод записывает в поток указанную строку с использованием кодировки UTF-8.

Аргументы
string- строка для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeString: (NSString *)  string
encoding: (NSStringEncoding)  encoding 

Метод записывает в поток указанную строку с использованием заданной кодировки.

Аргументы
string- строка для записи в поток
encoding- кодировка записываемой строки
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeUByte: (SCUByte variable

Метод записывает в поток указанное 8-битное беззнаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeUInteger: (SCUInteger variable

Метод записывает в поток указанное 32-битное беззнаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeULong: (SCULong variable

Метод записывает в поток указанное 64-битное беззнаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
- (void) writeUnichar: (unichar)  variable

Метод записывает в поток указанный символ.

Аргументы
variable- символ для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка
См. также
- writeChar:
- (void) writeUShort: (SCUShort variable

Метод записывает в поток указанное 16-битное беззнаковое целое значение.

Аргументы
variable- значение для записи в поток
Исключения
SCStreamException- обнаружена ошибка потока
SCSystemException- обнаружена системная ошибка

Полный список свойств

- (id) delegate
readwritenonatomicretain

Обработчик событий потока

- (BOOL) eof
readnonatomicassign

Флаг обнаружения конца потока

- (SCStreamErrorHandling) errorHandling
readwritenonatomicassign

Режим обработки ошибок

- (SCULong) lastRead
readnonatomicassign

Количество прочитанных во время последней операции символов

- (SCULong) lastWrite
readnonatomicassign

Количество записанных во время последней операции символов

- (NSString *) name
readnonatomicretain

Название потока

- (id) object
readatomicretain

Указатель на текущий загружаемый объект

- (BOOL) opened
readnonatomicassign

Флаг открытия потока: YES если поток открыт и NO в противном случае

- (BOOL) readable
readnonatomicassign

Флаг определения возможности чтения данных из потока

- (BOOL) readOnly
readnonatomicassign

Флаг определения работы потока в режиме только для чтения

- (BOOL) readWrite
readnonatomicassign

Флаг определения поддержки как операций чтения, так и операций записи

- (SCStreamStatus) status
readnonatomicassign

Текущее состояние потока

- (SCStreamException *) streamException
readnonatomicassign

Последняя обнаруженная ошибка в работе потока

- (SCSystemException *) systemException
readnonatomicassign

Последняя обнаруженная системная ошибка

- (SCULong) totalRead
readnonatomicassign

Общее количество прочитанных символов

- (SCULong) totalWrite
readnonatomicassign

Общее количество записанных символов

- (BOOL) writable
readnonatomicassign

Флаг определения возможности записи данных в поток

- (BOOL) writeOnly
readnonatomicassign

Флаг определения работы потока в режиме только для записи


Объявления и описания членов классов находятся в файлах: