Shaka Packager SDK
single_thread_job_manager.h
1 // Copyright 2020 Google LLC. All rights reserved.
2 //
3 // Use of this source code is governed by a BSD-style
4 // license that can be found in the LICENSE file or at
5 // https://developers.google.com/open-source/licenses/bsd
6 
7 #ifndef PACKAGER_APP_SINGLE_THREAD_JOB_MANAGER_H_
8 #define PACKAGER_APP_SINGLE_THREAD_JOB_MANAGER_H_
9 
10 #include <memory>
11 
12 #include <packager/app/job_manager.h>
13 
14 namespace shaka {
15 namespace media {
16 
17 // A subclass of JobManager that runs all the jobs in a single thread.
19  public:
20  // @param sync_points is an optional SyncPointQueue used to synchronize and
21  // align cue points. JobManager cancels @a sync_points when any job
22  // fails or is cancelled. It can be NULL.
23  explicit SingleThreadJobManager(std::unique_ptr<SyncPointQueue> sync_points);
24 
25  // Run all registered jobs serially in this thread.
26  Status RunJobs() override;
27 };
28 
29 } // namespace media
30 } // namespace shaka
31 
32 #endif // PACKAGER_APP_SINGLE_THREAD_JOB_MANAGER_H_
All the methods that are virtual are virtual for mocking.
Definition: crypto_flags.cc:66