Project

General

Profile

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

Back