Skip to content

mw/com: Add Field Getter support - #758

Draft
bemerybmw wants to merge 7 commits into
mainfrom
brem_field_getter
Draft

mw/com: Add Field Getter support#758
bemerybmw wants to merge 7 commits into
mainfrom
brem_field_getter

Conversation

@bemerybmw

@bemerybmw bemerybmw commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Takes over: #438

@crimson11

crimson11 commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

If you are done with this PR, don't forget to update the tutorial: Chapter 9
I.e. the WARNING has to be removed, because after this PR is merged Field-Getter should work.

@bemerybmw
bemerybmw force-pushed the brem_field_getter branch from 343db54 to 1363a04 Compare July 31, 2026 06:49
@bemerybmw bemerybmw changed the title Brem field getter mw/com: Add Field Getter support Jul 31, 2026
Previously, the find service handler was occassionally called after the
ConsumerActions was destroyed. The handler held references to objects in
ConsumerActions (such as a mutex) which were accessed in the handler
after they'd already been destroyed. Calling StopFindService prevents
this issue.
AssertMethodHandlerSupportsMethodSignature now accepts an additional
template parameter which determines whether it should check that
QualityType is passed as the first argument.
For a Field getter, we are interested in the asil level of the
ProxyField which called the method (so that we can reference the slot
in the asil b or qm control vector). In the future, this may also be
interesting to general users of methods. However, for the moment we make
this a private interface accessible only to a field getter and can make
it public in the future if we see the need.
Since the wetter function can fail within the middleware
code (e.g. when trying to read the latest value of the
field fails), we need to return a result from the
setter and getter.
Since the method handlers for the field getters are registered
in the SkeletonField::PrepareOffer() function, we need to verify
that all method handlers have been registered after the calling
PrepareOffer() on the SkeletonFields.
@bemerybmw
bemerybmw force-pushed the brem_field_getter branch from 1363a04 to 2493765 Compare July 31, 2026 10:03
{
TRUE,
FALSE
};

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think the enum value should be something like kYes or kNo or something like kWithQualityType/kWithoutQualityType instead of true or false.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

3 participants