CoreControl¶
-
MLModule
¶ author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLControl
definition MLControl.def keywords diagnosis
,ML
,error
,output
,exceptions
,threads
,cache
,size
,debug
,environment
,variables
,trace
,dump
,stack
Purpose¶
The module CoreControl
permits the access and modification of many ML settings, like exception handling, number of used threads, cache size and debugging symbols.
Usage¶
n the panel Host&Cache you can set whether module errors lead to program crashes or whether they are handled by the error handler of the ML (Catch Exceptions).
The Debug panel permits setting/viewing of debug symbols which enable/disable debug outputs of module and ML classes.
In the Error Handling panel the behavior of the ML can be controlled and how messages, warnings or errors are to be handled.
Details¶
It is important to understand that some settings in the ML are global, i.e. they are not specific for one module, but hold for the complete running system. Such settings are e.g. the maximum number of threads, the (maximum) cache size or the list of classes which shall print debugging information. Those global settings can be controlled in this module.
Also there is a central class - the ML ErrorOutput class - which receives all messages generated in the ML and ML modules and decides to which other classes this information is sent. It can be configured e.g. by debugging symbols to control the actually printed debug information.
Other classes receiving information from the ErrorOutput class are typically modules like MLLogFile
, Console
or the standard console.
Tips¶
As intented, any debug environment name written in the field Debug Symbols (Use ML_ + CLASSNAME)
is globally available as long as the module exists. If the module is deleted, the symbols are removed from the ML ErrorOutput class.
Note that simply deleting the module from the network does not delete the module since the module is only moved into an undo buffer; so the symbols remain until the undo buffer is cleared. You can clear the buffer by selecting “Clear History” from the edit menu of the network. Closing the entire network also clears the undo buffer.
Since global ML settings are handled by this module, all modules always will show the same state for all these settings. If more than one module exists, changes in any of them are synchronized. That also means that the most recently changed or loaded module determines the global ML states and will override settings of other modules.
Parameter Fields¶
Field Index¶
Visible Fields¶
Symbol controlled debugging¶
-
name:
symbolControlledDebugging
, type:
Bool
, default:
TRUE
¶ If checked, all strings from the text input
Debug Symbols (Use ML_ + CLASSNAME)
are being analyzed.All classes that print debug information dependent on these symbols are activated and will print their information.
Otherwise no debug information is printed.
Enable all symbols¶
-
name:
fullDebugging
, type:
Bool
, default:
FALSE
¶ If checked, all debug information is printed.
Debug State¶
-
name:
debugState
, type:
String
, persistent:
no
¶ Shows whether debug symbols can be used.
On Information¶
-
name:
onInformation
, type:
Enum
, default:
Continue
¶ Defines what to do on information messages.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
On Warnings¶
-
name:
onWarnings
, type:
Enum
, default:
Continue
¶ Defines what to do on warnings.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
On Errors¶
-
name:
onErrors
, type:
Enum
, default:
Continue
¶ Defines what to do on errors.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
On Fatals¶
-
name:
onFatals
, type:
Enum
, default:
Abort
¶ Defines what to do on fatal errors.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
On Debugs¶
-
name:
onDebugs
, type:
Enum
, default:
Continue
¶ Defines what to do on debug messages.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
On Couts¶
-
name:
onCouts
, type:
Enum
, default:
Continue
¶ Defines what to do on
std::cout
prints.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
On Cerrs¶
-
name:
onCerrs
, type:
Enum
, default:
Continue
¶ Defines what to do on
std::cerr
prints.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
On Others¶
-
name:
onOthers
, type:
Enum
, default:
Continue
¶ Defines what to do on other messages.
Values:
Title | Name | Deprecated Name |
---|---|---|
Continue | Continue | |
Abort | Abort | Abort(0) |
Exit With Zero | ExitWithZero | Exit(0) |
Exit With Error Code | ExitWithErrorCode | Exit(ErrCode) |
Max Number of Threads¶
-
name:
maxNumThreads
, type:
Integer
, default:
8
¶ Sets the maximum number of threads the ML may use.
Enable final runtime check¶
-
name:
finalRuntimeChecks
, type:
Bool
, default:
FALSE
¶ If checked, the number of undeleted runtime typed object instances is being checked during the closing of MeVisLab.
Catch exceptions¶
-
name:
catchExceptions
, type:
Bool
, default:
FALSE
¶ If checked, exceptions are handled as fatal errors instead of letting the application crash.
Cache Size¶
-
name:
cacheSizeInMB
, type:
Integer
, default:
4068
¶ Sets the number of mega bytes of memory the ML should not exceed for caching.
Currently Used Cache Memory¶
-
name:
currUsedCacheSizeInMB
, type:
Integer
, persistent:
no
¶ Shows the size of the currently used ML cache in mega bytes.
Debug Symbols (Use ML_ + CLASSNAME)¶
-
name:
debugSymbols
, type:
String
¶ Sets the debug symbols defined in this module.
Global Debug Symbols¶
-
name:
globalDebugSymbols
, type:
String
, persistent:
no
¶ Shows the application wide debug symbols.
Major ML Version (majorVersionCC)¶
-
name:
majorVersionCC
, type:
Integer
, persistent:
no
¶ Shows the major version of the CoreControl module.
Major C-API Version (majorCAPIVersionCC)¶
-
name:
majorCAPIVersionCC
, type:
Integer
, persistent:
no
¶ Shows the major version of the C-API of the CoreControl module.
C++-API Version (versionOfCPPAPICC)¶
-
name:
versionOfCPPAPICC
, type:
Integer
, persistent:
no
¶ Shows the version number of the C++ API of the CoreControl module.
C-API Revision (revisionOfCAPICC)¶
-
name:
revisionOfCAPICC
, type:
Integer
, persistent:
no
¶ Shows the revision number of the C-API of the CoreControl module.
Revision (revisionCC)¶
-
name:
revisionCC
, type:
Integer
, persistent:
no
¶ Shows the revision number of the CoreControl module.
Version String (versionStringCC)¶
-
name:
versionStringCC
, type:
String
, persistent:
no
¶ Shows all version information of the CoreControl module as a version string.
Major ML Version (majorVersion)¶
-
name:
majorVersion
, type:
Integer
, persistent:
no
¶ Shows the major ML version.
Major C-API Version (majorCAPIVersion)¶
-
name:
majorCAPIVersion
, type:
Integer
, persistent:
no
¶ Shows the major version of the ML C-API.
C++-API Version (versionOfCPPAPI)¶
-
name:
versionOfCPPAPI
, type:
Integer
, persistent:
no
¶ Shows the version number of the C++ API of the ML.
C-API Revision (revisionOfCAPI)¶
-
name:
revisionOfCAPI
, type:
Integer
, persistent:
no
¶ Shows the revision number of the C-API of the ML.
Revision (revision)¶
-
name:
revision
, type:
Integer
, persistent:
no
¶ Shows the revision number of the ML.
Version String (versionString)¶
-
name:
versionString
, type:
String
, persistent:
no
¶ Shows all version information of the ML as a version string.
System Type¶
-
name:
systemType
, type:
String
, persistent:
no
¶ Shows the voxel addressing scheme and the system pointer size in bits.
The string is composed of two parts separated by ‘/’.
The first part shows which word width is used for voxel addressing indices, the second part shows the word width of the system.
If the first part is 32, an image may have at most 2^31 voxels. If the first part is 64, larger images can be handled if they are paged correctly even if the system is only a 32 bit system.
If the second part is 32, a 32 bit system is used and not more then 2GB of data is available for the process. If the second part is 64, very large memory and images can be handled.
Compiler¶
-
name:
compiler
, type:
String
, persistent:
no
¶ Shows which compiler was used to compile the CoreControl module.
Platform¶
-
name:
platform
, type:
String
, persistent:
no
¶ Shows which Platform the CoreControl module was compiled on.
Trace List Depth¶
-
name:
traceListDepth
, type:
Integer
, default:
128
¶ Shows the depth of the trace list.
Trace Stack Depth¶
-
name:
traceStackDepth
, type:
Integer
, default:
128
¶ Shows the depth of the trace stack.
Trace On Information¶
-
name:
traceOnInformation
, type:
Bool
, default:
FALSE
¶ If checked, dumps trace infos on information messages.
Trace On Warnings¶
-
name:
traceOnWarnings
, type:
Bool
, default:
FALSE
¶ If checked, dumps trace infos on warnings.
Trace On Errors¶
-
name:
traceOnErrors
, type:
Bool
, default:
FALSE
¶ If checked, dumps trace infos on on errors.
Trace On Fatals¶
-
name:
traceOnFatals
, type:
Bool
, default:
TRUE
¶ If checked, dumps trace infos on on fatal errors.
Trace On Debugs¶
-
name:
traceOnDebugs
, type:
Bool
, default:
FALSE
¶ If checked, dumps trace infos on on debug messages.
Trace On Couts¶
-
name:
traceOnCouts
, type:
Bool
, default:
FALSE
¶ If checked, dumps trace infos on on
std::cout
prints.