-
Notifications
You must be signed in to change notification settings - Fork 206
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
Avoid OSAL IDs in messages/data files #965
Comments
|
Checked the CFE code, I only see two instances of OSAL IDs in messages or data files - the cFE/fsw/cfe-core/src/inc/cfe_es.h Line 363 in e0d1ce8
So this currently (at least out of the box) probably has no meaning or usefulness for a ground system. I said "currently" because although AFAIK there is no interface that allows a ground system to query OSAL resources by ID, someone could easily write an app to do so, in which case the ID becomes useful. The other option would be to just switch it to the |
Found another one, the |
Submitted #982 about "private" SB Pipe data |
The "osal_id_t" type isn't defined in any of the CFE message/interface header files for use within telemetry. This ID is an ephemeral runtime value and is not relevant to a ground system or anything outside CFE, so it makes most sense to simply remove this ID from the telemtry structure. Note that all commands are name-based, not ID-based, hence why this ID is not really useful.
The "osal_id_t" type isn't defined in any of the CFE message/interface header files for use within telemetry. This ID is an ephemeral runtime value and is not relevant to a ground system or anything outside CFE, so it makes most sense to simply remove this ID from the telemtry structure. Note that all commands are name-based, not ID-based, hence why this ID is not really useful.
Fix #965, remove OSAL ID from App/LibInfo struct
Is your feature request related to a problem? Please describe.
OSAL runtime types aren't really defined as part of the external (i.e. mission-scope) interface. The
osal_id_t
is one such example - it is a local runtime type, not really intended to be saved in data files or command/telemetry messages.This might seem pedantic because it is simply a
uint32
, but when using CFE with a command/data dictionary tool this becomes apparent that the OSAL types used in telemetry and data files aren't part of the data dictionary. (OSAL itself doesn't have a cmd/tlm interface so it naturally wouldn't provide any such entity).Describe the solution you'd like
Use the
CFE_ES_ResourceID_t
instead. CallCFE_ES_ResourceID_FromOSAL()
when writing andCFE_ES_ResourceID_ToOSAL()
when reading, to do the type conversion. The underlying value is compatible (i.e. both 32 bituint32
, same numbers) so it should be transparent to external tools.Describe alternatives you've considered
Have OSAL provide a stablized CMD/TLM definition of IDs? (but CMD/TLM interface is not really part of OSAL's role - it is a runtime library)
Requester Info
Joseph Hickey, Vantage Systems, Inc.
The text was updated successfully, but these errors were encountered: