70 np = ap->parent[ip].pnop;
71 ib = ap->parent[ip].first;
73 for (i = 0; i < np; i++) {
74 nn = ap->plessey[ib].y*ap->lsiz + ap->plessey[ib].x;
75 mflag[nn] = MF_POSSIBLEOBJ;
81 ib = ap->parent[ip].first;
82 for(i = ap->ibstack - ap->parent[ip].pnop; i < ap->ibstack-1; i++) {
89 ap->bstack[ap->ibstack-1] = ib;
90 ap->ibstack -= ap->parent[ip].pnop;
94 ap->pstack[--ap->ipstack] = ip;
98 ap->parent[ip].pnop = -1;
99 ap->parent[ip].pnbp = -1;
135 for (ip = 1; ip <= ap->maxip; ip++) {
136 if(ap->parent[ip].pnop != -1) {
137 if(ap->parent[ip].pnop == ap->parent[ip].growing) {
141 if((ap->parent[ip].pnop >= ap->ipnop &&
142 ap->parent[ip].touch == 0) &&
143 (ap->parent[ip].pnbp < (ap->parent[ip].pnop)/2)) {
149 if (status != VIR_OK) {
159 ap->parent[ip].growing = ap->parent[ip].pnop;
200 for (ip = 1; ip <= ap->maxip; ip++) {
201 if(ap->parent[ip].pnop != -1) {
202 if(ap->parent[ip].pnop > big) {
203 big = ap->parent[ip].pnop;
213 for (ip = 0; ip <= ap->lsiz; ip++)
214 if(ap->lastline[ip] == ipbig) ap->lastline[ip] = 0;
250 unsigned char *mflag;
255 np = ap->parent[ip].pnop;
257 ap->plarray = cpl_realloc(ap->plarray,np*
sizeof(plstruct));
263 ib = ap->parent[ip].first;
266 for (i = 0; i < np; i++) {
267 ap->plarray[i].x = ap->plessey[ib].x + 1;
268 ap->plarray[i].y = ap->plessey[ib].y + 1;
269 ap->plarray[i].z = ap->plessey[ib].z;
270 ap->plarray[i].zsm = ap->plessey[ib].zsm;
271 nn = ap->plessey[ib].y*ap->lsiz + ap->plessey[ib].x;
272 mflag[nn] = MF_OBJPIX;
void terminate(ap_t *ap)
Check for objects that have terminated.
void restack(ap_t *ap, int ip)
Free information for an object from the ap structure.
void apfu(ap_t *ap)
Get rid of the largest contributor in an ap structure.
void extract_data(ap_t *ap, int ip)
Put data into the Plessey array for an object.
int process_results(ap_t *ap)
Process results.