|
ifw-daq
3.0.0-pre2
IFW Data Acquisition modules
|
Namespaces | |
| config | |
| detail | |
| merge | |
Classes | |
| struct | Configuration |
| Represents active configuration. More... | |
| class | DpmService |
| daqif::DpmControl and DpmDaqControl implementation. More... | |
| class | DaqController |
| Controller for specific DAQ. More... | |
| struct | ConcurrencyLimits |
| Imposes limits on how many concurrent operations are allowed. More... | |
| struct | SchedulerOptions |
| Options controlling scheduler operations. More... | |
| struct | DaqControllerOptions |
| Options for DaqController. More... | |
| class | ResourceToken |
| RAII token. More... | |
| class | Resource |
| struct | Resources |
| Limited resources. More... | |
| class | Scheduler |
| Schedules asynchronous activities that results in merged Data Product and delivery. More... | |
| class | SchedulerImpl |
| class | DaqControllerImpl |
| Internal data structure to SchedulerImpl. More... | |
| class | DaqWorkspace |
| Interface to DAQ workpace (TBD). More... | |
| class | Workspace |
| Interface to interact with DPM workspace. More... | |
| class | WorkspaceImpl |
| Implementation of daq::dpm::Workspace. More... | |
| class | DaqWorkspaceImpl |
| struct | MockScheduler |
| struct | MockDaqController |
| struct | MockWorkspace |
| struct | MockDaqWorkspace |
| struct | FakeRsyncFactory |
| struct | FakeProcFactory |
| class | TestDaqControllerBase |
| class | TestDaqControllerInit |
| class | TestDaqController |
| class | TestDpmService |
| struct | FakeDaqControllerFactory |
| class | TestSchedulerBase |
| class | TestSchedulerInit |
| class | TestScheduler |
| class | KeywordEx |
| Create keyword expression that memoize the provided string pattern. More... | |
| class | KeywordRuleProcessor |
| Interface for keyword rule processors. More... | |
| class | StandardKeywordRuleProcessor |
| class | SourceNotFound |
| class | SourceResolver |
| Provides location of fits source file. More... | |
| class | TestKeywordMatchP |
| class | TestKeywordMatch |
| class | TestKeywordTransform |
| class | ConfigManager |
| DPM Server specific configuration manager. More... | |
Functions | |
| std::ostream & | operator<< (std::ostream &os, DaqController const &daq) |
| TEST_F (TestDaqController, ScheduledTransitionsToTransferring) | |
| TEST_F (TestDaqController, TransferringWithoutFilesTransitionsToMerging) | |
| TEST_F (TestDaqController, TransferringStartsTransfersAndWhenCompletedTransitionsToMerging) | |
| TEST_F (TestDaqController, TransferringFailsDoesNotTransition) | |
| TEST_F (TestDaqController, RecoverAutomaticallyFromTransferringIfFilesExist) | |
| [recovery] If transfer previously failed and then stopped this should be automatically recoverable if DAQ is started again and requested files are available on FS. More... | |
| TEST_F (TestDaqController, MergingSuccessful) | |
| TEST_F (TestDaqController, RecoverAutomaticallyFromMergeFailureIfResultExists) | |
| [recovery] More... | |
| TEST_F (TestDpmService, QueryStorageStatusSuceeds) | |
| TEST_F (TestDpmService, QueryStorageStatusFails) | |
| TEST_F (TestDpmService, QueueDaqSucceeds) | |
| TEST_F (TestDpmService, QueueDaqThrows) | |
| TEST_F (TestDpmService, AbortDaqSucceeds) | |
| TEST_F (TestDpmService, AbortDaqThrows) | |
| TEST_F (TestDpmService, GetDaqStatusSucceeds) | |
| TEST_F (TestDpmService, GetDaqStatusThrows) | |
| TEST_F (TestDpmService, GetActiveDaqsSucceeds) | |
| TEST_F (TestDpmService, GetActiveDaqsThrowws) | |
| TEST_F (TestSchedulerInit, Construction) | |
| TEST_F (TestScheduler, QueueDaqIsSuccessful) | |
| TEST_F (TestScheduler, QueueDaqRollbackIfStoreQueueFails) | |
| TEST_F (TestScheduler, QueueDaqRollbackIfStoreSpecificationFails) | |
| TEST_F (TestScheduler, QueueDaqRollbackIfInitializeDaqWorkspaceFails) | |
| TEST_F (TestScheduler, QueueDaqFailsIfParseDpFails) | |
| TEST_F (TestScheduler, PollActivatesDaqWhichStartsTransfer) | |
| TEST_F (TestScheduler, PollCompletesDaq) | |
| TEST_F (TestScheduler, AbortDaqSucceedsIfNotActive) | |
| TEST_F (TestScheduler, AbortDaqSucceedsIfActive) | |
| TEST_F (TestScheduler, AbortDaqFailsIfDaqDoesNotExit) | |
| TEST_F (TestScheduler, GetStatusSucceeds) | |
| bool | KeywordMatch (fits::KeywordVariant const &keyword, KeywordEx const &ex) |
| fits::KeywordVariant | KeywordTransform (fits::KeywordVariant const &keyword, std::regex const &re, char const *fmt) |
| Transforms keyword name using regex. More... | |
| fits::ValueKeyword | KeywordTransform (fits::ValueKeyword const &keyword, std::regex const &re, char const *fmt) |
| fits::EsoKeyword | KeywordTransform (fits::EsoKeyword const &keyword, std::regex const &re, char const *fmt) |
| fits::LiteralKeyword | KeywordTransform (fits::LiteralKeyword const &keyword, std::regex const &re, char const *fmt) |
| template<class InputIt , class OutputIt > | |
| constexpr OutputIt | Filter (InputIt first, InputIt last, OutputIt d_first, KeywordEx const &filter_ex) |
| template<class InputIt , class OutputIt > | |
| OutputIt | Transform (InputIt first, InputIt last, OutputIt d_first, KeywordEx const &filter_ex, std::regex const ®ex, char const *fmt) |
| void | to_json (nlohmann::json &j, SourceResolver::Mapping const &p) |
| void | from_json (nlohmann::json const &j, SourceResolver::Mapping &p) |
| std::ostream & | operator<< (std::ostream &os, SourceResolver::SourceFile const &source) |
| TEST (TestParseEx, FailsIfOperatorIsInvalid) | |
| TEST (TestParseEx, FailsIfScopeIsInValid) | |
| TEST (TestParseEx, FailsIfWhitespaceIsMssing) | |
| TEST (TestParseEx, FailsIfPatternIsMissing) | |
| TEST (TestParseEx, IncludeEsoKw) | |
| TEST (TestParseEx, ExcludeEsoKw) | |
| TEST (TestParseEx, IncludeValueKw) | |
| TEST (TestParseEx, IncludeCommentaryKw) | |
| TEST (TestParseEx, IncludeAnyKw) | |
| TEST (TestKeywordEx, Constructors) | |
| TEST_P (TestKeywordMatchP, EmptyPatternDoesntMatch) | |
| TEST_P (TestKeywordMatchP, MatchAnyWithSingle) | |
| TEST_P (TestKeywordMatchP, MatchAnyWithMultiple) | |
| INSTANTIATE_TEST_SUITE_P (Test, TestKeywordMatchP, testing::Values(fits::EsoKeyword("VALUE", "value"), fits::ValueKeyword("VALUE", 0.0), fits::LiteralKeyword("VALUE = 'tgt' / comment"), fits::LiteralKeyword("VALUE Comment"))) | |
| TEST_F (TestKeywordMatch, EsoSimpleInclusivePattern) | |
| TEST_F (TestKeywordMatch, ValueSimpleInclusivePattern) | |
| TEST_F (TestKeywordMatch, LiteralSimpleInclusivePattern) | |
| TEST_F (TestKeywordMatch, CommentarySimpleInclusivePattern) | |
| TEST_F (TestKeywordMatch, SimpleExclusivePattern) | |
| TEST_F (TestKeywordMatch, EsoInclusiveExclusivePattern) | |
| TEST_F (TestKeywordTransform, EsoKeyword) | |
| TEST_F (TestKeywordTransform, InvalidEsoKeyword) | |
| TEST_F (TestKeywordTransform, ValueKeyword) | |
| TEST_F (TestKeywordTransform, InvalidValueKeyword) | |
| TEST_F (TestKeywordTransform, LiteralKeyword) | |
| int | Entrypoint (log4cplus::Logger const &logger, ConfigManager &cfg_mgr) |
Variables | |
| const std::string | LOGGER_NAME = "daq.dpm" |
| const std::string | LOGGER_NAME_SCHEDULER = "daq.dpm.scheduler" |
| const std::string | LOGGER_NAME_CONTROLLER = "daq.dpm.controller" |
| const std::string | LOGGER_NAME_TRANSFER = "daq.dpm.transfer" |
| const std::string | LOGGER_NAME_MERGER = "daq.dpm.merger" |
| struct daq::dpm::Configuration |
Represents active configuration.
Configuration may come from various origins. This is managed by dpm::ConfigManager.
Definition at line 33 of file config.hpp.
| Class Members | ||
|---|---|---|
| path | config_file |
Configuration file. If it's a relative path it should be resolved against |
| path | dataroot | Dataroot, normally this should be configured from environment variable $DATAROOT. |
| string | db_prefix | |
| seconds | db_timeout | |
| uint16_t | limit_daq | |
| uint16_t | limit_merge | |
| uint16_t | limit_net_receive | |
| uint16_t | limit_net_send | |
| string | log_config | Log file, defaults to nothing. |
| LogLevel | log_level | |
| string | merge_bin | Merge application name. |
| string | name | Process instance name. |
| bool | no_ipc | If true (set by command line option only) it disables MAL service registration. |
| bool | poll_once | Run scheduler once. |
| string | ps_uri | Pub/sub URI. |
| string | rr_uri | Request/reply URI. |
| string | rsync_bin | rsync application name. |
| path | workspace |
Workspace. If it's a relative path it should be resolved against |
| struct daq::dpm::ConcurrencyLimits |
Imposes limits on how many concurrent operations are allowed.
Definition at line 105 of file scheduler.hpp.
| struct daq::dpm::SchedulerOptions |
Options controlling scheduler operations.
Limits with value 0 is unlimited.
Definition at line 132 of file scheduler.hpp.
| Class Members | ||
|---|---|---|
| struct ConcurrencyLimits | concurrency_limits | |
| struct daq::dpm::DaqControllerOptions |
Options for DaqController.
Definition at line 162 of file scheduler.hpp.
| Class Members | ||
|---|---|---|
| string | merge_bin | |
| string | rsync_bin | |
| struct daq::dpm::Resources |
| int daq::dpm::Entrypoint | ( | log4cplus::Logger const & | logger, |
| ConfigManager & | cfg_mgr | ||
| ) |
|
constexpr |
Definition at line 58 of file keywordRule.hpp.
| void daq::dpm::from_json | ( | nlohmann::json const & | j, |
| SourceResolver::Mapping & | p | ||
| ) |
Definition at line 63 of file sourceResolver.cpp.
| daq::dpm::INSTANTIATE_TEST_SUITE_P | ( | Test | , |
| TestKeywordMatchP | , | ||
| testing::Values(fits::EsoKeyword("VALUE", "value"), fits::ValueKeyword("VALUE", 0.0), fits::LiteralKeyword("VALUE = 'tgt' / comment"), fits::LiteralKeyword("VALUE Comment")) | |||
| ) |
| bool daq::dpm::KeywordMatch | ( | fits::KeywordVariant const & | keyword, |
| KeywordEx const & | ex | ||
| ) |
| Iterator | An iterator type to a type that can be converted to a std::string_view, such as char const**, std::vector<std::string>::const_iterator, std::list<std::string_view>::const_iterator. |
Definition at line 150 of file keywordEx.cpp.
| fits::EsoKeyword daq::dpm::KeywordTransform | ( | fits::EsoKeyword const & | keyword, |
| std::regex const & | re, | ||
| char const * | fmt | ||
| ) |
Definition at line 182 of file keywordEx.cpp.
| fits::KeywordVariant daq::dpm::KeywordTransform | ( | fits::KeywordVariant const & | keyword, |
| std::regex const & | re, | ||
| char const * | fmt | ||
| ) |
Transforms keyword name using regex.
Definition at line 164 of file keywordEx.cpp.
| fits::LiteralKeyword daq::dpm::KeywordTransform | ( | fits::LiteralKeyword const & | keyword, |
| std::regex const & | re, | ||
| char const * | fmt | ||
| ) |
Definition at line 193 of file keywordEx.cpp.
| fits::ValueKeyword daq::dpm::KeywordTransform | ( | fits::ValueKeyword const & | keyword, |
| std::regex const & | re, | ||
| char const * | fmt | ||
| ) |
Definition at line 171 of file keywordEx.cpp.
| std::ostream & daq::dpm::operator<< | ( | std::ostream & | os, |
| DaqController const & | daq | ||
| ) |
Definition at line 59 of file scheduler.cpp.
| std::ostream& daq::dpm::operator<< | ( | std::ostream & | os, |
| SourceResolver::SourceFile const & | source | ||
| ) |
Definition at line 17 of file sourceResolver.cpp.
| daq::dpm::TEST | ( | TestKeywordEx | , |
| Constructors | |||
| ) |
Definition at line 99 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| ExcludeEsoKw | |||
| ) |
Definition at line 59 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| FailsIfOperatorIsInvalid | |||
| ) |
Definition at line 18 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| FailsIfPatternIsMissing | |||
| ) |
Definition at line 42 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| FailsIfScopeIsInValid | |||
| ) |
Definition at line 26 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| FailsIfWhitespaceIsMssing | |||
| ) |
Definition at line 35 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| IncludeAnyKw | |||
| ) |
Definition at line 89 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| IncludeCommentaryKw | |||
| ) |
Definition at line 79 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| IncludeEsoKw | |||
| ) |
Definition at line 49 of file testKeywordEx.cpp.
| daq::dpm::TEST | ( | TestParseEx | , |
| IncludeValueKw | |||
| ) |
Definition at line 69 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestDaqController | , |
| MergingSuccessful | |||
| ) |
Definition at line 300 of file testDaqController.cpp.
| daq::dpm::TEST_F | ( | TestDaqController | , |
| RecoverAutomaticallyFromMergeFailureIfResultExists | |||
| ) |
[recovery]
Definition at line 351 of file testDaqController.cpp.
| daq::dpm::TEST_F | ( | TestDaqController | , |
| RecoverAutomaticallyFromTransferringIfFilesExist | |||
| ) |
[recovery] If transfer previously failed and then stopped this should be automatically recoverable if DAQ is started again and requested files are available on FS.
Definition at line 282 of file testDaqController.cpp.
| daq::dpm::TEST_F | ( | TestDaqController | , |
| ScheduledTransitionsToTransferring | |||
| ) |
Definition at line 175 of file testDaqController.cpp.
| daq::dpm::TEST_F | ( | TestDaqController | , |
| TransferringFailsDoesNotTransition | |||
| ) |
Definition at line 239 of file testDaqController.cpp.
| daq::dpm::TEST_F | ( | TestDaqController | , |
| TransferringStartsTransfersAndWhenCompletedTransitionsToMerging | |||
| ) |
Definition at line 202 of file testDaqController.cpp.
| daq::dpm::TEST_F | ( | TestDaqController | , |
| TransferringWithoutFilesTransitionsToMerging | |||
| ) |
Definition at line 187 of file testDaqController.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| AbortDaqSucceeds | |||
| ) |
Definition at line 121 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| AbortDaqThrows | |||
| ) |
Definition at line 139 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| GetActiveDaqsSucceeds | |||
| ) |
Definition at line 188 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| GetActiveDaqsThrowws | |||
| ) |
Definition at line 229 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| GetDaqStatusSucceeds | |||
| ) |
Definition at line 151 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| GetDaqStatusThrows | |||
| ) |
Definition at line 175 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| QueryStorageStatusFails | |||
| ) |
Definition at line 80 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| QueryStorageStatusSuceeds | |||
| ) |
Definition at line 55 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| QueueDaqSucceeds | |||
| ) |
Definition at line 92 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestDpmService | , |
| QueueDaqThrows | |||
| ) |
Definition at line 109 of file testDpmService.cpp.
| daq::dpm::TEST_F | ( | TestKeywordMatch | , |
| CommentarySimpleInclusivePattern | |||
| ) |
Definition at line 166 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordMatch | , |
| EsoInclusiveExclusivePattern | |||
| ) |
Definition at line 191 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordMatch | , |
| EsoSimpleInclusivePattern | |||
| ) |
Definition at line 127 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordMatch | , |
| LiteralSimpleInclusivePattern | |||
| ) |
Definition at line 153 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordMatch | , |
| SimpleExclusivePattern | |||
| ) |
Definition at line 179 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordMatch | , |
| ValueSimpleInclusivePattern | |||
| ) |
Definition at line 140 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordTransform | , |
| EsoKeyword | |||
| ) |
Definition at line 200 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordTransform | , |
| InvalidEsoKeyword | |||
| ) |
Definition at line 208 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordTransform | , |
| InvalidValueKeyword | |||
| ) |
Definition at line 222 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordTransform | , |
| LiteralKeyword | |||
| ) |
Definition at line 229 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestKeywordTransform | , |
| ValueKeyword | |||
| ) |
Definition at line 214 of file testKeywordEx.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| AbortDaqFailsIfDaqDoesNotExit | |||
| ) |
Definition at line 367 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| AbortDaqSucceedsIfActive | |||
| ) |
Definition at line 333 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| AbortDaqSucceedsIfNotActive | |||
| ) |
Definition at line 309 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| GetStatusSucceeds | |||
| ) |
Definition at line 375 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| PollActivatesDaqWhichStartsTransfer | |||
| ) |
Definition at line 236 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| PollCompletesDaq | |||
| ) |
Definition at line 274 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| QueueDaqFailsIfParseDpFails | |||
| ) |
Definition at line 222 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| QueueDaqIsSuccessful | |||
| ) |
Definition at line 117 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| QueueDaqRollbackIfInitializeDaqWorkspaceFails | |||
| ) |
Definition at line 203 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| QueueDaqRollbackIfStoreQueueFails | |||
| ) |
Definition at line 142 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestScheduler | , |
| QueueDaqRollbackIfStoreSpecificationFails | |||
| ) |
Definition at line 173 of file testScheduler.cpp.
| daq::dpm::TEST_F | ( | TestSchedulerInit | , |
| Construction | |||
| ) |
Definition at line 111 of file testScheduler.cpp.
| daq::dpm::TEST_P | ( | TestKeywordMatchP | , |
| EmptyPatternDoesntMatch | |||
| ) |
Definition at line 107 of file testKeywordEx.cpp.
| daq::dpm::TEST_P | ( | TestKeywordMatchP | , |
| MatchAnyWithMultiple | |||
| ) |
Definition at line 115 of file testKeywordEx.cpp.
| daq::dpm::TEST_P | ( | TestKeywordMatchP | , |
| MatchAnyWithSingle | |||
| ) |
Definition at line 111 of file testKeywordEx.cpp.
| void daq::dpm::to_json | ( | nlohmann::json & | j, |
| SourceResolver::Mapping const & | p | ||
| ) |
Definition at line 53 of file sourceResolver.cpp.
| OutputIt daq::dpm::Transform | ( | InputIt | first, |
| InputIt | last, | ||
| OutputIt | d_first, | ||
| KeywordEx const & | filter_ex, | ||
| std::regex const & | regex, | ||
| char const * | fmt | ||
| ) |
Definition at line 64 of file keywordRule.hpp.
| const std::string daq::dpm::LOGGER_NAME = "daq.dpm" |
Definition at line 22 of file config.hpp.
| const std::string daq::dpm::LOGGER_NAME_CONTROLLER = "daq.dpm.controller" |
Definition at line 24 of file config.hpp.
| const std::string daq::dpm::LOGGER_NAME_MERGER = "daq.dpm.merger" |
Definition at line 26 of file config.hpp.
| const std::string daq::dpm::LOGGER_NAME_SCHEDULER = "daq.dpm.scheduler" |
Definition at line 23 of file config.hpp.
| const std::string daq::dpm::LOGGER_NAME_TRANSFER = "daq.dpm.transfer" |
Definition at line 25 of file config.hpp.