82 PANDORA_RETURN_RESULT_IF_AND_IF(STATUS_CODE_SUCCESS, STATUS_CODE_NOT_FOUND, !=, XmlHelper::ReadValue(xmlHandle,
"ListType",
m_listType));
86 std::cout <<
"StreamingAlgorithm::ReadSettings - Error: Only Cluster list type is supported at this time" << std::endl;
87 return STATUS_CODE_INVALID_PARAMETER;
90 PANDORA_RETURN_RESULT_IF(STATUS_CODE_SUCCESS, !=, XmlHelper::ReadVectorOfValues(xmlHandle,
"InputListNames",
m_inputListNames));
93 std::cout <<
"StreamingAlgorithm::ReadSettings - Error: No input lists found" << std::endl;
94 return STATUS_CODE_NOT_FOUND;
97 PANDORA_RETURN_RESULT_IF_AND_IF(STATUS_CODE_SUCCESS, STATUS_CODE_NOT_FOUND, !=, XmlHelper::ReadValue(xmlHandle,
"OutputListName",
m_outputListName));
98 PANDORA_RETURN_RESULT_IF_AND_IF(
99 STATUS_CODE_SUCCESS, STATUS_CODE_NOT_FOUND, !=, XmlHelper::ReadVectorOfValues(xmlHandle,
"OutputListNames",
m_outputListNames));
102 std::cout <<
"StreamingAlgorithm::ReadSettings - Error: You must provide either a single output list name OR a list of output list names"
104 return STATUS_CODE_NOT_FOUND;
108 std::cout <<
"StreamingAlgorithm::ReadSettings - Error: When providing a list of output lists, there should be a one-to-one "
109 <<
"correspondence with the list of input lists" << std::endl;
110 return STATUS_CODE_INVALID_PARAMETER;
115 std::string algStreamName{
"Algorithms" + listName};
118 std::cout <<
"StreamingAlgorithm::ReadSettings - Error: Duplicate stream name found" << std::endl;
119 return STATUS_CODE_INVALID_PARAMETER;
121 PANDORA_RETURN_RESULT_IF(
122 STATUS_CODE_SUCCESS, !=, XmlHelper::ProcessAlgorithmList(*
this, xmlHandle, algStreamName,
m_streamAlgorithmMap[algStreamName]));
125 std::cout <<
"StreamingAlgorithm::ReadSettings - Error: Found no algorithms for \'" << algStreamName <<
"\'" << std::endl;
126 return STATUS_CODE_NOT_FOUND;
130 return STATUS_CODE_SUCCESS;
pandora::StringVector m_inputListNames
The names of the input lists.
pandora::StringVector m_outputListNames
Names of the output lists if not combining into a single list at the end.
StreamAlgorithmMap m_streamAlgorithmMap
A map from individual streams to the algorithms that stream should run.
std::string m_listType
The type of the input lists (currently only Cluster is supported)
BEGIN_PROLOG could also be cout
std::string m_outputListName
The name of the output list.