apps: lc-compliance: Merge CaptureBalanced
and CaptureUnbalanced
The above two classes have very similar implementations, in fact, the only essential difference is how many requests are queued. `CaptureBalanced` queues a predetermined number of requests, while `CaptureUnbalanced` queues requests without limit. This can be addressed by introducing a "capture" and a "queue" limit into the `Capture` class, which determine at most how many requests can be queued, and how many request completions are expected before stopping. Signed-off-by: Barnabás Pőcze <pobrn@protonmail.com> Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
This commit is contained in:
parent
995bb7e507
commit
74c0e8cbf1
3 changed files with 102 additions and 169 deletions
|
@ -87,11 +87,11 @@ TEST_P(SingleStream, Capture)
|
|||
{
|
||||
auto [role, numRequests] = GetParam();
|
||||
|
||||
CaptureBalanced capture(camera_);
|
||||
Capture capture(camera_);
|
||||
|
||||
capture.configure(role);
|
||||
|
||||
capture.capture(numRequests);
|
||||
capture.run(numRequests, numRequests);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -106,12 +106,12 @@ TEST_P(SingleStream, CaptureStartStop)
|
|||
auto [role, numRequests] = GetParam();
|
||||
unsigned int numRepeats = 3;
|
||||
|
||||
CaptureBalanced capture(camera_);
|
||||
Capture capture(camera_);
|
||||
|
||||
capture.configure(role);
|
||||
|
||||
for (unsigned int starts = 0; starts < numRepeats; starts++)
|
||||
capture.capture(numRequests);
|
||||
capture.run(numRequests, numRequests);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -125,11 +125,11 @@ TEST_P(SingleStream, UnbalancedStop)
|
|||
{
|
||||
auto [role, numRequests] = GetParam();
|
||||
|
||||
CaptureUnbalanced capture(camera_);
|
||||
Capture capture(camera_);
|
||||
|
||||
capture.configure(role);
|
||||
|
||||
capture.capture(numRequests);
|
||||
capture.run(numRequests);
|
||||
}
|
||||
|
||||
INSTANTIATE_TEST_SUITE_P(CaptureTests,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue