User story #125
Updated by Ivan Herrero almost 10 years ago
Implement requirement MARTe-EX-F-1.1.11 based on the original MARTe implementation
Note: Being a framework aimed at control systems it will naturally interact with a large type of IO interfaces. Given that the endianess encoding of the data arriving/sending from/to these interfaces cannot be prescribed, it is crucial for framework developers to have these kind of functions available.
Note: Add 64 bit native support
Note: Use _intrinsic_ in Visual Studio C++ compiler
h1. Source code files modified
* Source/Core/L0Portability/Architecture/x86_cl/EndianityA.h
* Source/Core/L0Portability/Architecture/x86_gcc/EndianityA.h
* Source/Core/L0Portability/Endianity.cpp
* Source/Core/L0Portability/Endianity.h
h1. Architecture & design review
*Date of the review:* 04/06/2015
*Person who did the review:* Andre' Neto
*Version of architecture & design document:* N/A. This is a support class 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:* 18/06/2015 16/06/2015
*Person who did the review:* Ivan Herrero
*Result of review:* PASS FAIL
*List of non-conformities:* N/A
Manual review for Source/Core/L0Portability/Architecture/x86_cl/EndianityA.h
Relax rule "definition for inline functions shall be outside class declaration"
Manual review for Source/Core/L0Portability/Architecture/x86_gcc/EndianityA.h
Relax rule "definition for inline functions shall be outside class declaration"
Manual review for Source/Core/L0Portability/Endianity.cpp
OK
Manual review for Source/Core/L0Portability/Endianity.h
file @date => wrong format
class @details => Should not explain implementation details (AtomicA.h), better explain it on "Inline method definitions" section?
private section of class => Should be at the end of the class declaration
*Note:* Automatic review with cppcheck OK
Note: Being a framework aimed at control systems it will naturally interact with a large type of IO interfaces. Given that the endianess encoding of the data arriving/sending from/to these interfaces cannot be prescribed, it is crucial for framework developers to have these kind of functions available.
Note: Add 64 bit native support
Note: Use _intrinsic_ in Visual Studio C++ compiler
h1. Source code files modified
* Source/Core/L0Portability/Architecture/x86_cl/EndianityA.h
* Source/Core/L0Portability/Architecture/x86_gcc/EndianityA.h
* Source/Core/L0Portability/Endianity.cpp
* Source/Core/L0Portability/Endianity.h
h1. Architecture & design review
*Date of the review:* 04/06/2015
*Person who did the review:* Andre' Neto
*Version of architecture & design document:* N/A. This is a support class 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:* 18/06/2015 16/06/2015
*Person who did the review:* Ivan Herrero
*Result of review:* PASS FAIL
*List of non-conformities:* N/A
Manual review for Source/Core/L0Portability/Architecture/x86_cl/EndianityA.h
Relax rule "definition for inline functions shall be outside class declaration"
Manual review for Source/Core/L0Portability/Architecture/x86_gcc/EndianityA.h
Relax rule "definition for inline functions shall be outside class declaration"
Manual review for Source/Core/L0Portability/Endianity.cpp
OK
Manual review for Source/Core/L0Portability/Endianity.h
file @date => wrong format
class @details => Should not explain implementation details (AtomicA.h), better explain it on "Inline method definitions" section?
private section of class => Should be at the end of the class declaration
*Note:* Automatic review with cppcheck OK