head	1.5;
access;
symbols
	bobbase:1.5
	bob:1.5.1
	r2_1:1.5
	r2_0:1.5
	r1_1_beta:1.5
	r1_1_alpha:1.4
	r1_0:1.4
	r0_11:1.4
	r0_10:1.4
	r0_9:1.2;
locks
	fjsoria:1.5; strict;
comment	@// @;


1.5
date	94.07.25.17.26.39;	author thoth;	state Exp;
branches
	1.5.1.1;
next	1.4;

1.4
date	94.01.07.15.10.00;	author thoth;	state Exp;
branches;
next	1.3;

1.3
date	93.12.29.17.33.18;	author thoth;	state Exp;
branches;
next	1.2;

1.2
date	93.11.17.18.31.30;	author thoth;	state Exp;
branches;
next	1.1;

1.1
date	93.09.15.13.02.30;	author thoth;	state Exp;
branches;
next	;

1.5.1.1
date	95.01.13.19.58.04;	author thoth;	state Exp;
branches;
next	;


desc
@Meta code for an image-image type conversion.
@


1.5
log
@Name sanitization
@
text
@// Emacs: -*- C++ -*-

//
//	Copyright 1993, Center for Computer Vision and Visualization,
//	University of Florida.  All rights reserved.
//


//
// $Log: constructor.templ,v $
// Revision 1.4  1994/01/07  15:10:00  thoth
// Image class is now CoreImage and named image types are
// Image<P,T>.
//
// Revision 1.3  1993/12/29  17:33:18  thoth
// New operator scheme that prevents the need for trivial Image conversions.
//
// Revision 1.2  1993/11/17  18:31:30  thoth
// Conversion members now properly delete the ErrorDIs that their
// base member was initialized with.
//
// Revision 1.1  1993/09/15  13:02:30  thoth
// Initial revision
//
// Revision 1.2  93/05/27  11:49:02  thoth
// Copyright Notices
// 
// Revision 1.1  93/03/18  11:18:33  thoth
// Initial revision
// 

IA_Image<IA_Point<int>, ATYPE>::
	IA_Image/*<IA_Point<int>, ATYPE>*/(const IA_CoreImage<IA_Point<int>, LTYPE> &arg)
{
    IA_Set<IA_Point<int> >	domain = arg.domain();
    // if the domain isn\'t extensive, we need a lazy conversion image...
    const unsigned	sz = domain.card();
    ATYPE * const	vec = new ATYPE[sz];
    {
	ATYPE	*scan = vec;
	IA_IVIter<IA_Point<int>,LTYPE>	iter(arg);
	LTYPE	temp;
	while (iter(temp)) {
	    *(scan++) = temp;
	}
    }

    disassociate_image();
    set_and_reference_image(new IA_VectorI<IA_Point<int>,ATYPE>(domain, vec, sz, 1));
}
@


1.5.1.1
log
@CoreImage has been re-merged with Image.  All special stuff should be
friends of FBI now.
@
text
@a10 3
// Revision 1.5  1994/07/25  17:26:39  thoth
// Name sanitization
//
d33 1
a33 1
	IA_Image/*<IA_Point<int>, ATYPE>*/(const IA_Image<IA_Point<int>, LTYPE> &arg)
@


1.4
log
@Image class is now CoreImage and named image types are
Image<P,T>.
@
text
@d10 5
a14 1
// $Log: conversion.templ,v $
d32 2
a33 2
IA_Image<IA_IntPoint, ATYPE>::
	IA_Image/*<IA_IntPoint, ATYPE>*/(const IA_CoreImage<IA_IntPoint, LTYPE> &arg)
d35 1
a35 1
    IA_IntPointSet	domain = arg.domain();
d41 1
a41 1
	IA_IVIter<IA_IntPoint,LTYPE>	iter(arg);
d49 1
a49 1
    set_and_reference_image(new IA_VectorI<IA_IntPoint,ATYPE>(domain, vec, sz, 1));
@


1.3
log
@New operator scheme that prevents the need for trivial Image conversions.
@
text
@d11 3
d28 2
a29 2
/*PROMOTE*/IA_Image<IA_IntPoint, ATYPE>::
	/*PROMOTE*/IA_Image<IA_IntPoint, ATYPE>(const IA_Image<IA_IntPoint, LTYPE> &arg)
@


1.2
log
@Conversion members now properly delete the ErrorDIs that their
base member was initialized with.
@
text
@d11 4
d25 2
a26 2
IA_Image<IA_IntPoint, ATYPE>::
	IA_Image<IA_IntPoint, ATYPE>(const IA_Image<IA_IntPoint, LTYPE> &arg)
@


1.1
log
@Initial revision
@
text
@d10 4
a13 1
// $Log:	conversion.templ,v $
d36 2
@
