Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add DpWriter #2593

Merged
merged 14 commits into from
Mar 28, 2024
Merged

Add DpWriter #2593

merged 14 commits into from
Mar 28, 2024

Conversation

bocchino
Copy link
Collaborator

@bocchino bocchino commented Mar 13, 2024

This PR adds the Svc/DpWriter component and supporting unit tests. It also does the following:

  • Add data product-specific configuration files to config.
  • Add a Fw::FileNameString object for storing file names. The buffer size is configurable in FPP.
  • Add more fine-grained control of the error status return values in the unit test Os::File stub.
  • Add a method to Utils::HashBuffer for converting the first four bytes of the hash to a U32 value. This is useful for error reporting.
  • Do incidental reformatting of Utils/HashBuffer.{hpp,cpp}.
  • Add data product-specific ports to Svc/DpPorts.
  • Make a few incidental changes to Svc/DpManager.
  • Fix spelling of header files included from config, as discussed in Improve path names of config headers #2640.

Fw/Types/FileNameString.hpp Fixed Show fixed Hide fixed
Fw/Types/FileNameString.hpp Fixed Show fixed Hide fixed
Fw/Types/FileNameString.hpp Fixed Show fixed Hide fixed
@bocchino bocchino closed this Mar 13, 2024
@bocchino bocchino reopened this Mar 13, 2024
@bocchino bocchino closed this Mar 13, 2024
@bocchino bocchino reopened this Mar 13, 2024
@bocchino bocchino closed this Mar 13, 2024
@bocchino bocchino reopened this Mar 13, 2024
Utils/Hash/HashBufferCommon.cpp Fixed Show resolved Hide resolved
Utils/Hash/HashBufferCommon.cpp Fixed Show fixed Hide fixed
Utils/Hash/HashBufferCommon.cpp Fixed Show fixed Hide fixed
Copy link

@github-advanced-security github-advanced-security bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CodeQL found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

Svc/DpWriter/DpWriter.cpp Dismissed Show dismissed Hide dismissed
Fw/Types/FileNameString.cpp Dismissed Show dismissed Hide dismissed
Svc/DpWriter/DpWriter.cpp Dismissed Show dismissed Hide dismissed
Svc/DpWriter/DpWriter.cpp Dismissed Show dismissed Hide dismissed
Utils/Hash/HashBufferCommon.cpp Dismissed Show dismissed Hide dismissed
Svc/DpWriter/DpWriter.cpp Dismissed Show dismissed Hide dismissed
Svc/DpWriter/DpWriter.cpp Dismissed Show dismissed Hide dismissed
Svc/DpWriter/DpWriter.cpp Dismissed Show dismissed Hide dismissed
Utils/Hash/HashBufferCommon.cpp Dismissed Show dismissed Hide dismissed
Utils/Hash/HashBufferCommon.cpp Dismissed Show dismissed Hide dismissed
@bocchino bocchino closed this Mar 13, 2024
@bocchino bocchino reopened this Mar 13, 2024
Copy link
Collaborator

@timcanham timcanham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a few comments...

Fw/Types/FileNameString.hpp Outdated Show resolved Hide resolved
Fw/Types/FileNameString.cpp Show resolved Hide resolved
Svc/DpPorts/CMakeLists.txt Show resolved Hide resolved
@LeStarch
Copy link
Collaborator

@bocchino @timcanham ready for merge?

@timcanham
Copy link
Collaborator

image

If a header H.hpp exists in the F Prime source base, then

is dangerous. Because [project root] and [fprime root] are both
in the list of include paths, it's not clear whether this means "include
[project root]/config/H.hpp" or "include [fprime root]/config/H.hpp."

On the other hand,

or

has no such ambiguity, because only one of [project root]/config
and [fprime root]/config is in the list of include paths.
If a header H.hpp exists in the F Prime source base, then

`#include "config/H.hpp"`

is dangerous. Because [project root] and [fprime root] are both
in the list of include paths, it's not clear whether this means "include
[project root]/config/H.hpp" or "include [fprime root]/config/H.hpp."

On the other hand,

include <config/H.hpp>

or

`#include "config/H.hpp"`

has no such ambiguity, because only one of [project root]/config
and [fprime root]/config is in the list of include paths.
@bocchino
Copy link
Collaborator Author

Ready! I made some changes to config include paths as discussed.

@LeStarch
Copy link
Collaborator

Wooooooooooooo...... :shipit:

@LeStarch LeStarch merged commit b89b5d9 into nasa:devel Mar 28, 2024
34 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants