]> OCCT Git - occt-copy.git/commit
0029451: Information Message Alert to debug an algorithm or object functionality
authornds <nds@opencascade.com>
Fri, 2 Oct 2020 11:17:59 +0000 (14:17 +0300)
committernds <nds@opencascade.com>
Thu, 19 Nov 2020 12:19:08 +0000 (15:19 +0300)
commit59a6dfcaff466a57a67782c65e2c8b730e1167f7
tree3a0dc264372603395be5792ad2fed621823558ef
parentfb3ed41db761364119b319f3ec3ef56a78c786ac
0029451: Information Message Alert to debug an algorithm or object functionality

- Added possibility to send stream information and transient object into Message_Messenger. Message_Printer will process it if needed.
- Add Message_PrinterToReport to send messenger information into Message_Report.
- Extended Message_Report to collect hierarchical alerts, to be able to collect some metrics during alerts processing.
- Added Message_AlertExtended to prepare hierarchical alerts with custom attributes. One attribute for one alert.
- Added Message_CompositeAlerts class to handle a container of alerts.
- Added Message_Level to start a new hierarchical level by creating an instance, stop by destricting.
- Added Message_Attribute and inheritors to store custom information about alert like object, stream, shape, some metrics.
- Implement Message_AttributeAlert to collect start/stop information about active metrics of Message_Report. This kind of attribute is created if at least one metric is active in the report.
- Add Message_MetricType enumeration with possible kinds of metrics in report.
- Implement DumpJson for Message_Report to store all collected alerts into stream.
- Added draw commands for Message_Report, Message_Messenger.

(cherry picked from commit 6522304c17181a09fa831c040219d611dc44b94a)

# Conflicts:
# src/Message/FILES
# src/Message/Message.hxx
# src/Message/Message_Messenger.hxx
# src/Message/Message_Printer.hxx
37 files changed:
src/Draw/Draw.cxx
src/Draw/Draw.hxx
src/Draw/Draw_Commands.cxx
src/Draw/Draw_MessageCommands.cxx [new file with mode: 0644]
src/Draw/FILES
src/Message/FILES
src/Message/Message.cxx
src/Message/Message.hxx
src/Message/Message_Alert.cxx
src/Message/Message_Alert.hxx
src/Message/Message_AlertExtended.cxx [new file with mode: 0644]
src/Message/Message_AlertExtended.hxx [new file with mode: 0644]
src/Message/Message_Attribute.cxx [new file with mode: 0644]
src/Message/Message_Attribute.hxx [new file with mode: 0644]
src/Message/Message_AttributeMeter.cxx [new file with mode: 0644]
src/Message/Message_AttributeMeter.hxx [new file with mode: 0644]
src/Message/Message_AttributeObject.cxx [new file with mode: 0644]
src/Message/Message_AttributeObject.hxx [new file with mode: 0644]
src/Message/Message_AttributeStream.cxx [new file with mode: 0644]
src/Message/Message_AttributeStream.hxx [new file with mode: 0644]
src/Message/Message_CompositeAlerts.cxx [new file with mode: 0644]
src/Message/Message_CompositeAlerts.hxx [new file with mode: 0644]
src/Message/Message_Level.cxx [new file with mode: 0644]
src/Message/Message_Level.hxx [new file with mode: 0644]
src/Message/Message_Messenger.cxx
src/Message/Message_Messenger.hxx
src/Message/Message_MetricType.hxx [new file with mode: 0644]
src/Message/Message_Printer.cxx
src/Message/Message_Printer.hxx
src/Message/Message_PrinterToReport.cxx [new file with mode: 0644]
src/Message/Message_PrinterToReport.hxx [new file with mode: 0644]
src/Message/Message_Report.cxx
src/Message/Message_Report.hxx
src/TopoDS/FILES
src/TopoDS/TopoDS_AlertAttribute.cxx [new file with mode: 0644]
src/TopoDS/TopoDS_AlertAttribute.hxx [new file with mode: 0644]
tests/demo/draw/messenger [new file with mode: 0644]