IReporter
The IReporter interface can be implemented for objects to catch reports on a level, where some info is passed with typed parameters (e.g. timing seconds as doubles, values as objects). As soon as a reporter object is added, all Report calls from the same thread are also delivered to that reporter object. Reporting on other threads, where the reporter object was not added, does not appear. If the same reporter object is added multiple times from different threads, all these methods need to do their own locking. If only one reporter object is added from one thread, no locking is necessary. The supplied threadIndex, is a running number for each thread assigned based on their first sending of a Report message. It can be directly used as a key in e.g. an IntDict.
Instance members
Instance member | Description |
Begin(...)
Signature: (threadIndex:int * level:int * target:ILogTarget * text:string * timed:bool) -> unit
Modifiers: abstract |
|
End(...)
Signature: (threadIndex:int * level:int * target:ILogTarget * text:string * seconds:float) -> unit
Modifiers: abstract |
|
Line(...)
Signature: (threadIndex:int * type:LogType * level:int * target:ILogTarget * leftText:string * rightPos:int * rightText:string) -> unit
Modifiers: abstract |
|
Progress(...)
Signature: (threadIndex:int * level:int * target:ILogTarget * text:string * progress:float * seconds:float) -> unit
Modifiers: abstract |
|
Text(threadIndex, level, target, text)
Signature: (threadIndex:int * level:int * target:ILogTarget * text:string) -> unit
Modifiers: abstract |
|
Values(...)
Signature: (threadIndex:int * level:int * target:ILogTarget * name:string * separator:string * values:obj []) -> unit
Modifiers: abstract |
|
Wrap(threadIndex, level, target, text)
Signature: (threadIndex:int * level:int * target:ILogTarget * text:string) -> unit
Modifiers: abstract |