Skip to content

Add support for feed-forward multi-track video requests.#129

Merged
jrobble merged 3 commits into
developfrom
feat/ff-all-tracks
Oct 27, 2025
Merged

Add support for feed-forward multi-track video requests.#129
jrobble merged 3 commits into
developfrom
feat/ff-all-tracks

Conversation

Copy link
Copy Markdown
Member

@brosenberg42 brosenberg42 left a comment

Choose a reason for hiding this comment

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

Reviewable status: 0 of 1 files reviewed, 1 unresolved discussion (waiting on @jrobble)


detection/api/include/MPFDetectionComponent.h line 248 at r2 (raw file):

        virtual std::vector<MPFVideoTrack> GetDetections(const MPFVideoJob &job) = 0;

        virtual std::vector<MPFVideoTrack> GetDetections(const MPFAllVideoTracksJob &job) {

I think this could cause confusion since a C++ developer could override this method. We could remove this method and throw the exception in CppComponentHandle. Then, C++ component developers would not see the method at all.

Copy link
Copy Markdown
Member Author

@jrobble jrobble left a comment

Choose a reason for hiding this comment

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

Reviewable status: 0 of 1 files reviewed, 1 unresolved discussion (waiting on @brosenberg42 and @jrobble)


detection/api/include/MPFDetectionComponent.h line 248 at r2 (raw file):

Previously, brosenberg42 wrote…

I think this could cause confusion since a C++ developer could override this method. We could remove this method and throw the exception in CppComponentHandle. Then, C++ component developers would not see the method at all.

Removing this method results in this error:

/home/mpf/git/openmpf-projects/openmpf/trunk/detection/executor/cpp/cli-runner/MpfCppSdkPythonBindings.cpp:189:100: error: no matching function for call to ‘MPF::COMPONENT::MPFDetectionComponent::GetDetections(const MPF::COMPONENT::MPFAllVideoTracksJob&)’
  189 |                  [](CppComponent& c, const MPFAllVideoTracksJob &job) { return c->GetDetections(job); },
      |

I had to also update MpfCppSdkPythonBindings.cpp:

            .def("GetDetections",
                    [](CppComponent& c, const MPFAllVideoTracksJob &job) {
                        throw std::runtime_error{"MPFAllVideoTracksJob is not currently supported."}; 
                    },
                    "job"_a,
                    call_guard_t())

Copy link
Copy Markdown
Member

@brosenberg42 brosenberg42 left a comment

Choose a reason for hiding this comment

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

Reviewable status: 0 of 1 files reviewed, 1 unresolved discussion (waiting on @jrobble)


detection/api/include/MPFDetectionComponent.h line 248 at r2 (raw file):

Previously, jrobble (Jeff Robble) wrote…

Removing this method results in this error:

/home/mpf/git/openmpf-projects/openmpf/trunk/detection/executor/cpp/cli-runner/MpfCppSdkPythonBindings.cpp:189:100: error: no matching function for call to ‘MPF::COMPONENT::MPFDetectionComponent::GetDetections(const MPF::COMPONENT::MPFAllVideoTracksJob&)’
  189 |                  [](CppComponent& c, const MPFAllVideoTracksJob &job) { return c->GetDetections(job); },
      |

I had to also update MpfCppSdkPythonBindings.cpp:

            .def("GetDetections",
                    [](CppComponent& c, const MPFAllVideoTracksJob &job) {
                        throw std::runtime_error{"MPFAllVideoTracksJob is not currently supported."}; 
                    },
                    "job"_a,
                    call_guard_t())

Now that you have updated MpfCppSdkPythonBindings, can this be removed?

Copy link
Copy Markdown
Member Author

@jrobble jrobble left a comment

Choose a reason for hiding this comment

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

Reviewable status: 0 of 1 files reviewed, 1 unresolved discussion (waiting on @brosenberg42 and @jrobble)


detection/api/include/MPFDetectionComponent.h line 248 at r2 (raw file):

Previously, brosenberg42 wrote…

Now that you have updated MpfCppSdkPythonBindings, can this be removed?

Yes. Done.

Copy link
Copy Markdown
Member

@brosenberg42 brosenberg42 left a comment

Choose a reason for hiding this comment

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

@brosenberg42 reviewed 1 of 1 files at r3, all commit messages.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on @jrobble)

@jrobble jrobble merged commit 91c0525 into develop Oct 27, 2025
2 checks passed
@jrobble jrobble deleted the feat/ff-all-tracks branch October 27, 2025 18:54
@github-project-automation github-project-automation Bot moved this from To do to Closed in OpenMPF: Development Oct 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Closed

Development

Successfully merging this pull request may close these issues.

2 participants