Samond Classes Library 1.2.0-RELEASE build 166
SCFileStream.h
Go to the documentation of this file.
1 //
2 // SCFileStream.h
3 // scl
4 //
5 // Created by Viacheslav Smolensky on 02.03.12.
6 // Copyright (c) 2007 - 2017 by Samond Development Corporation. All rights reserved.
7 //
8 
21 #import <scl/SCTypes.h>
22 #import <scl/SCStream.h>
23 
24 #pragma mark -
25 #pragma mark Константы класса
26 
30 #define SCFileStreamClass @"SCFileStream"
31 
32 #pragma mark -
33 #pragma mark Типы поддержки файловых потоков
34 
54 
60 
66 
72 
78 
84 };
85 
97 
116 
126 
137 
149 
162 
175 };
176 
188 
203 
209 
215 };
216 
229 
281 @interface SCFileStream : SCStream {
282  FILE *fFile; // Указатель на файловый поток
283  SCFileStreamOpenMode fOpenMode; // Режим открытия файлового потока
284 }
285 #pragma mark -
286 #pragma mark Свойства экземпляра класса
287 
296 @property (nonatomic, assign, readonly, getter=openMode) SCFileStreamOpenMode openMode;
297 
300 #pragma mark -
301 #pragma mark Методы доступа к свойствам экземпляра класса
302 - (SCFileStreamOpenMode)openMode;
303 
304 #pragma mark -
305 #pragma mark Создание файловых потоков
306 + (SCFileStream *)fileStreamWithPath:(NSString *)path
307  mode:(SCFileStreamOpenMode)mode
308  delegate:(id<SCStreamDelegate>)delegate
309  handling:(SCStreamErrorHandling)handling;
310 + (SCFileStream *)fileStreamWithPath:(NSString *)path
311  mode:(SCFileStreamOpenMode)mode
312  delegate:(id<SCStreamDelegate>) delegate;
313 + (SCFileStream *)fileStreamWithPath:(NSString *)path mode:(SCFileStreamOpenMode)mode;
314 + (SCFileStream *)fileStreamWithPath:(NSString *)path;
315 + (SCFileStream *)readOnlyFileStreamWithPath:(NSString *)path;
316 + (SCFileStream *)writeOnlyFileStreamWithPath:(NSString *)path;
317 + (SCFileStream *)appendFileStreamWithPath:(NSString *)path;
318 + (SCFileStream *)fileStream;
319 
320 #pragma mark -
321 #pragma mark Инициализация файловых потоков
322 - (id)initWithPath:(NSString *)path
323  mode:(SCFileStreamOpenMode)mode
324  delegate:(id<SCStreamDelegate>)delegate
325  handling:(SCStreamErrorHandling)handling;
326 - (id)initWithPath:(NSString *)path mode:(SCFileStreamOpenMode)mode delegate:(id<SCStreamDelegate>)delegate;
327 - (id)initWithPath:(NSString *)path mode:(SCFileStreamOpenMode)mode;
328 - (id)initWithPath:(NSString *)path;
329 - (id)initReadOnlyWithPath:(NSString *)path;
330 - (id)initWriteOnlyWithPath:(NSString *)path;
331 - (id)initAppendWithPath:(NSString *)path;
332 - (id)init;
333 
334 #pragma mark -
335 #pragma mark Чтение и запись данных
336 - (SCUSize)readBytes:(SCUSize)count toBuffer:(void *)buffer;
337 - (SCUSize)writeBytes:(SCUSize)count fromBuffer:(const void *)buffer;
338 
339 #pragma mark -
340 #pragma mark Открытие и закрытие потока
341 - (void)openWithPath:(NSString *)path
342  mode:(SCFileStreamOpenMode)mode
343  handling:(SCStreamErrorHandling)handling;
344 - (void)openWithPath:(NSString *)path mode:(SCFileStreamOpenMode)mode;
345 - (void)openWithPath:(NSString *)path;
346 - (void)openReadOnlyWithPath:(NSString *)path;
347 - (void)openWriteOnlyWithPath:(NSString *)path;
348 - (void)openAppendWithPath:(NSString *)path;
349 - (void)close;
350 
351 #pragma mark -
352 #pragma mark Позиционирование в потоке
353 - (void)setOffset:(SCLong)offset whence:(SCFileStreamOffsetWhence)whence;
354 - (void)setOffset:(SCLong)offset;
355 - (SCLong)offset;
356 - (void)rewind;
357 
358 @end
SCFileStreamOpenMode openMode
Definition: SCFileStream.h:296
int64_t SCLong
Definition: SCTypes.h:54
Definition: SCFileStream.h:148
File stream class.
Definition: SCFileStream.h:281
Definition: SCFileStream.h:77
Definition: SCFileStream.h:83
Definition: SCFileStream.h:65
Definition: SCFileStream.h:71
Definition: SCFileStream.h:136
Definition: SCFileStream.h:161
Definition: SCFileStream.h:115
Streams events handling class.
Definition: SCStreamDelegate.h:51
Definition: SCFileStream.h:53
SCInteger SCStreamStatus
Stream status type.
Definition: SCStream.h:181
enum _SCStreamErrorHandling SCStreamErrorHandling
Stream error handling type.
Definition: SCStream.h:87
Definition: SCFileStream.h:174
enum _SCFileStreamOpenMode SCFileStreamOpenMode
File stream opening modes type.
Definition: SCFileStream.h:187
SCStreamStatus SCFileStreamStatus
File stream status type.
Definition: SCFileStream.h:96
Definition: SCFileStream.h:59
enum _SCFileStreamOffsetWhence SCFileStreamOffsetWhence
Stream offset whence type.
Definition: SCFileStream.h:228
size_t SCUSize
Definition: SCTypes.h:221
Definition: SCFileStream.h:202
Definition: SCFileStream.h:125
Definition: SCFileStream.h:214
Definition: SCFileStream.h:208
_SCFileStreamOpenMode
Definition: SCFileStream.h:106
_SCFileStreamOffsetWhence
Definition: SCFileStream.h:197
_SCFileStreamStatus
Definition: SCFileStream.h:48
Abstract parent class of the stream classes hierarchy.
Definition: SCStream.h:242