CLUReportComposer
@interface CLUReportComposer : NSObject
CLUReportComposer
is a class responsible for composing final Clue report from many pieces/modules. This class initialize all recordable and info modules and actually start recording. CLUReportComposer
also calling addNewFrameWithTimestamp:
method from CLURecordableModule
protocol for every recordable module and recordInfoData
method from CLUInfoModule
protocol for every info module.
-
All info modules which will record their data only once during recording
Declaration
Objective-C
@property (readonly, nonatomic) NSMutableArray<id<CLUInfoModule>> *infoModules;
Swift
var infoModules: NSMutableArray! { get }
-
All recordable modules which will record their data during recording with specific timestamp for each new data entity
Declaration
Objective-C
@property (readonly, nonatomic) NSMutableArray<id<CLURecordableModule>> *recordableModules;
Swift
var recordableModules: NSMutableArray! { get }
-
BOOL property which is indicate whether record has started or not
Declaration
Objective-C
@property (readonly, nonatomic) BOOL isRecording;
Swift
var isRecording: Bool { get }
-
Initialize new
CLUReportComposer
instance with recordable modules array. So you can do recording even without info modules, but you have to have recordable modules for report recordingDeclaration
Objective-C
- (instancetype)initWithModulesArray: (NSArray<id<CLURecordableModule>> *)modulesArray;
Swift
init!(modulesArray: [Any]!)
Parameters
modulesArray
Recordable modules array which will record their data during recording with specific timestamp for each new data entity
Return Value
New
CLUReportComposer
instance -
Add more recordable modules to
CLUReportComposer.recordableModules
arrayDeclaration
Objective-C
- (void)addRecordableModule:(id<CLURecordableModule>)module;
Swift
func addRecordableModule(_ module: Any!)
Parameters
module
Array with recordable modules which will be added to
CLUReportComposer.recordableModules
-
Remove single recordable module from
CLUReportComposer.recordableModules
arrayDeclaration
Objective-C
- (void)removeRecordableModule:(id<CLURecordableModule>)module;
Swift
func removeRecordableModule(_ module: Any!)
Parameters
module
Single recordable module which will be removed from
CLUReportComposer.recordableModules
-
Start actual recording
Declaration
Objective-C
- (void)startRecording;
Swift
func startRecording()
-
Stop actual recording
Declaration
Objective-C
- (void)stopRecording;
Swift
func stopRecording()