You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
worker_api.hh/cc: will hold all workers (benchmark, read frame, compute, record...) and functions to start and stop them. (so all *_worker_controller_ members and their related functions).
settings_api.hh/cc: will hold all the settings (ones defined in settings.hh and handle access, update and initialization of it (in the ctor). It will also hold cudaStream and the CudaStreams struct. (so the realtime_settings_ and cuda_streams_ members and associated functions).
These two modules must be internal, the front user must not control directly settings and workers only the API has the right to do so.
You could do this by making all submodules of the API friend to these new two modules.
Other variables inside holovibes.hh should be separated like so:
the input_queue_ and active_camera_: should be stored in the input_api.
the record_queue_: inside record_api.
the compute_pipe_: inside compute_api.
Other functions should be separated like so:
get_input_queue, init_input_queue and get_camera_ini_name: in input_api
get_record_queue, init_record_queue and is_recording: in record_api.
get_compute_pipe: in compute_api (this must not throw exception and the no throw version can be deleted).
The text was updated successfully, but these errors were encountered:
Holovibes can be split into two distinct modules:
worker_api.hh/cc
: will hold all workers (benchmark, read frame, compute, record...) and functions to start and stop them. (so all*_worker_controller_
members and their related functions).settings_api.hh/cc
: will hold all the settings (ones defined insettings.hh
and handle access, update and initialization of it (in the ctor). It will also hold cudaStream and theCudaStreams
struct. (so therealtime_settings_
andcuda_streams_
members and associated functions).These two modules must be internal, the front user must not control directly settings and workers only the API has the right to do so.
You could do this by making all submodules of the API friend to these new two modules.
Other variables inside
holovibes.hh
should be separated like so:input_queue_
andactive_camera_
: should be stored in theinput_api
.record_queue_
: insiderecord_api
.compute_pipe_
: insidecompute_api
.Other functions should be separated like so:
get_input_queue
,init_input_queue
andget_camera_ini_name
: ininput_api
get_record_queue
,init_record_queue
andis_recording
: inrecord_api
.get_compute_pipe
: incompute_api
(this must not throw exception and the no throw version can be deleted).The text was updated successfully, but these errors were encountered: