User story #127
Updated by Ivan Herrero almost 10 years ago
Implement requirement MARTe-EX-F-1.1.13 based on the original MARTe implementation
Note: One of the most portable ways to measure time with high accuracy is to use the high resolution timer counter.
h1. Source code files modified
* Source/Core/L0Portability/HighResolutionTimer.cpp
* Source/Core/L0Portability/HighResolutionTimer.h
* Source/Core/L0Portability/OperatingSystem/Windows/HighResolutionTimerCalibratorOS.h
* Source/Core/L0Portability/OperatingSystem/Linux/HighResolutionTimerCalibratorOS.h
* Source/Core/L0Portability/Architecture/x86_cl/HighResolutionTimerA.h
* Source/Core/L0Portability/Architecture/x86_gcc/HighResolutionTimerA.h
h1. Architecture & design review
*Date of the review:* 12/06/2015
*Person who did the review:* André Neto
*Version of architecture & design document:* N/A. As per the original MARTe implementation, this is a support function and does not require formal design in UML.
*Result of review:* N/A
*List of non-conformities:* N/A
h1. Code and documentation review
*Date of the review:* 22/06/2015
*Person who did the review:* Ivan Herrero
*Result of review:* FAIL
*List of non-conformities:*
Manual review for Source\Core\L0Portability\HighResolutionTimer.cpp
OK See #113
Manual review for Source\Core\L0Portability\HighResolutionTimer.h
OK In file's documentation it is written HighResolutionTime instead of HighResolutionTime.
See #113
Manual review for Source/Core/L0Portability/OperatingSystem/Windows/HighResolutionTimerCalibratorOS.h
Class documentation should have "/**" and "*/" on their own lines.
The attribute LINUX_CPUINFO_BUFFER_SIZE is not used.
If the attribute LINUX_CPUINFO_BUFFER_SIZE is needed, then it does not have documentation.
If the attribute LINUX_CPUINFO_BUFFER_SIZE is needed, then it should be named WINDOWS_CPUINFO_BUFFER_SIZE.
Violation of rule 6-2-1 at line 78 (chained assignement of tt3 and tt4 with the value of HighResolutionTimerA::Read64()).
Manual review for Source/Core/L0Portability/OperatingSystem/Linux/HighResolutionTimerCalibratorOS.h
OK The attribute LINUX_CPUINFO_BUFFER_SIZE does not have documentation.
Manual review of Source/Core/L0Portability/Architecture/x86_cl/HighResolutionTimerA.h
OK
Manual review of Source/Core/L0Portability/Architecture/x86_gcc/HighResolutionTimerA.h
OK
Note: One of the most portable ways to measure time with high accuracy is to use the high resolution timer counter.
h1. Source code files modified
* Source/Core/L0Portability/HighResolutionTimer.cpp
* Source/Core/L0Portability/HighResolutionTimer.h
* Source/Core/L0Portability/OperatingSystem/Windows/HighResolutionTimerCalibratorOS.h
* Source/Core/L0Portability/OperatingSystem/Linux/HighResolutionTimerCalibratorOS.h
* Source/Core/L0Portability/Architecture/x86_cl/HighResolutionTimerA.h
* Source/Core/L0Portability/Architecture/x86_gcc/HighResolutionTimerA.h
h1. Architecture & design review
*Date of the review:* 12/06/2015
*Person who did the review:* André Neto
*Version of architecture & design document:* N/A. As per the original MARTe implementation, this is a support function and does not require formal design in UML.
*Result of review:* N/A
*List of non-conformities:* N/A
h1. Code and documentation review
*Date of the review:* 22/06/2015
*Person who did the review:* Ivan Herrero
*Result of review:* FAIL
*List of non-conformities:*
Manual review for Source\Core\L0Portability\HighResolutionTimer.cpp
OK See #113
Manual review for Source\Core\L0Portability\HighResolutionTimer.h
OK In file's documentation it is written HighResolutionTime instead of HighResolutionTime.
See #113
Manual review for Source/Core/L0Portability/OperatingSystem/Windows/HighResolutionTimerCalibratorOS.h
Class documentation should have "/**" and "*/" on their own lines.
The attribute LINUX_CPUINFO_BUFFER_SIZE is not used.
If the attribute LINUX_CPUINFO_BUFFER_SIZE is needed, then it does not have documentation.
If the attribute LINUX_CPUINFO_BUFFER_SIZE is needed, then it should be named WINDOWS_CPUINFO_BUFFER_SIZE.
Violation of rule 6-2-1 at line 78 (chained assignement of tt3 and tt4 with the value of HighResolutionTimerA::Read64()).
Manual review for Source/Core/L0Portability/OperatingSystem/Linux/HighResolutionTimerCalibratorOS.h
OK The attribute LINUX_CPUINFO_BUFFER_SIZE does not have documentation.
Manual review of Source/Core/L0Portability/Architecture/x86_cl/HighResolutionTimerA.h
OK
Manual review of Source/Core/L0Portability/Architecture/x86_gcc/HighResolutionTimerA.h
OK