std::vector<pcl::PointCloud<pcl::PointXYZ>::Ptr> MovingObjectsIdentificator::identify() { if(verbose) std::cout << "\nMoving Object Identification start" << std::endl; findDifference(); removeOutliers(); if(verbose) std::cout << "Moving Object Identification end" << std::endl; return extractClusters(); }
void Solver::iterate (LayerArray & la) { double t1, t2; t1 = MPI_Wtime(); do { la.calcFunction (); int result = la.check(); MPI_Allgather (&result, 1, MPI_INT, results, 1, MPI_INT, MPI_COMM_WORLD); if (finish()) { break; } } while (1); t2 = MPI_Wtime(); if (rank == 0) { std::cout << "Time taken : " << t2 - t1 << std::endl; } findDifference (la); }
extern void pg_age(sqlite3_context *context, int argc, sqlite3_value **argv) { struct tm age; struct tm beg; struct tm tmbuff; struct tm *bp; struct tm *bigger; struct tm *smaller; time_t currTime; double seconds; char *rp; int rplen; char buff[BUFF_LEN]; char *arg1; char *arg2; _ksu_check_arg_cnt(argc, 1, 2, "age"); if (ksu_prm_ok(context, argc, argv, "age", KSU_PRM_DATETIME, KSU_PRM_DATETIME)) { (void)memset(&age, 0, sizeof(struct tm)); arg1 = (char *)sqlite3_value_text(argv[0]); if ((sscanf(arg1, "%d-%d-%d %d:%d:%d", &age.tm_year, &age.tm_mon, &age.tm_mday, &age.tm_hour, &age.tm_min, &age.tm_sec) < 3)) { ksu_err_msg(context, KSU_ERR_ARG_N_NOT_DATETIME, 1, "age"); return; } age.tm_mon -= 1; age.tm_year -= 1900; if (argc == 1) { time(&currTime); if (currTime != -1) { bp = localtime_r(&currTime, &tmbuff); if (bp) { bp->tm_hour = 0; bp->tm_min = 0; bp->tm_sec = 0; bp->tm_gmtoff = 0; bp->tm_isdst = 0; seconds = currTime - mktime(&age); if (seconds > 0) { bigger = bp; smaller = &age; } else { bigger = &age; smaller = bp; } } else { // Not expected sqlite3_result_null(context); return; } } else { // Not expected sqlite3_result_null(context); return; } } else { (void)memset(&beg, 0, sizeof(struct tm)); arg2 = (char *)sqlite3_value_text(argv[1]); if ((sscanf(arg2, "%d-%d-%d %d:%d:%d", &beg.tm_year, &beg.tm_mon, &beg.tm_mday, &beg.tm_hour, &beg.tm_min, &beg.tm_sec) < 3)) { ksu_err_msg(context, KSU_ERR_ARG_N_NOT_DATETIME, 2, "age"); return; } beg.tm_mon -= 1; beg.tm_year -= 1900; seconds = mktime(&age) - mktime(&beg); if (seconds > 0) { bigger = &age; smaller = &beg; } else { bigger = &beg; smaller = &age; } bp = &age; } findDifference(bigger, smaller); if ((rp = (char *)sqlite3_malloc(AGE_LEN)) == NULL) { sqlite3_result_error_nomem(context); return; } rp[0] = '\0'; rplen = 0; if (bigger->tm_year) { snprintf(buff, BUFF_LEN, "%s%d years", (bigger == bp ? "" : "-"), bigger->tm_year); strncat(rp, buff, AGE_LEN - rplen); rplen = strlen(rp); } if (bigger->tm_mon) { snprintf(buff, BUFF_LEN, "%s%s%d mons", (rplen ? " " : ""), (bigger == bp ? "" : "-"), bigger->tm_mon); strncat(rp, buff, AGE_LEN - rplen); rplen = strlen(rp); } if (bigger->tm_mday) { snprintf(buff, BUFF_LEN, "%s%s%d days", (rplen ? " " : ""), (bigger == bp ? "" : "-"), bigger->tm_mday); strncat(rp, buff, AGE_LEN - rplen); } sqlite3_result_text(context, rp, -1, sqlite3_free); } }