std::cout << "AtomicActivity2:" << std::endl << "\titerCount: " << sin->iterCount.getValue() << std::endl << "\toutPortIn1: " << sin->outPortIn1.getValue() << std::endl << "\toutPortIn2: " << sin->outPortIn2.getValue() << std::endl << "\tloopPortIn1: " << sin->loopPortIn1.getValue() << std::endl; if (sin->iterCount.getValue() <= 0) { #include std::stringstream ss; ss << "Test Failure: iterCount [" << sin->iterCount.getValue() << "] is not greater than zero."; throw wfr::exception::wfr_fatal_error(ss.str()); } if (sin->iterCount.getValue() != sin->outPortIn1.getValue()) { #include std::stringstream ss; ss << "Test Failure: outPortIn1 [" << sin->outPortIn1.getValue() << "] is not equal iterCount [" << (sin->iterCount.getValue()) << "]."; throw wfr::exception::wfr_fatal_error(ss.str()); } if (sin->iterCount.getValue() != sin->outPortIn2.getValue()) { #include std::stringstream ss; ss << "Test Failure: outPortIn2 [" << sin->outPortIn2.getValue() << "] is not equal iterCount [" << (sin->iterCount.getValue()) << "]."; throw wfr::exception::wfr_fatal_error(ss.str()); } if (sin->iterCount.getValue() != sin->loopPortIn1.getValue()) { #include std::stringstream ss; ss << "Test Failure: loopPortIn1 [" << sin->loopPortIn1.getValue() << "] is not equal iterCount [" << (sin->iterCount.getValue()) << "]."; throw wfr::exception::wfr_fatal_error(ss.str()); } if (sin->unionPortIn1.getSize() != sin->iterCount.getValue()) { #include std::stringstream ss; ss << "Test Failure: unionPortIn1 collection size [" << sin->unionPortIn1.getSize() << "] is not equal iterCount [" << sin->iterCount.getValue() << "]."; throw wfr::exception::wfr_fatal_error(ss.str()); } std::cout << "\tunionPortIn1: [ "; bool isFirst = true; for (wfr_id_t t = 0; t < sin->unionPortIn1.getSize(); t++) { if (sin->unionPortIn1.getEntryValue(t) != t+1) { #include std::stringstream ss; ss << "Test Failure: unionPortIn1 collection value index [" << t << "] does not have value [" << sin->unionPortIn1.getEntryValue(t)<< "]."; throw wfr::exception::wfr_fatal_error(ss.str()); } if (isFirst) { isFirst = false; } else { std::cout << ", "; } std::cout << sin->unionPortIn1.getEntryValue(t); } std::cout << " ]" << std::endl; if (sin->isOkUnion1.getSize() != sin->iterCount.getValue()) { #include std::stringstream ss; ss << "Test Failure: isOkUnion1 collection size [" << sin->isOkUnion1.getSize() << "] is not equal iterCount [" << sin->iterCount.getValue() << "]."; throw wfr::exception::wfr_fatal_error(ss.str()); } std::cout << "\tisOkUnion1: [ "; isFirst = true; for (wfr_id_t t = 0; t < sin->isOkUnion1.getSize(); t++) { if (!sin->isOkUnion1.getEntryValue(t)) { #include std::stringstream ss; ss << "Test Failure: isOkUnion1 collection value at index [" << t << "] is not true]."; throw wfr::exception::wfr_fatal_error(ss.str()); } if (isFirst) { isFirst = false; } else { std::cout << ", "; } std::cout << sin->isOkUnion1.getEntryValue(t); } std::cout << " ]" << std::endl; sout->outPortOut1.setValue(sin->outPortIn1.getValue()); sout->loopPortOut1.setValue(sin->loopPortIn1.getValue()); sout->unionPortOut1 = sin->unionPortIn1; sout->isOK.setValue(true);