// Emacs: -*- C++ -*-

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

static char copyright[] = "Copyright 1993, Center for Computer Vision and Visualization,\nUniversity of Florida.  All rights reserved.\n";

static char IntDI_rcsid[] = "$Id: FloatCI.c,v 1.3 1994/01/07 15:10:00 thoth Exp $";

//
// $Log: FloatCI.c,v $
// Revision 1.3  1994/01/07  15:10:00  thoth
// Image class is now CoreImage and named image types are
// Image<P,T>.
//
// Revision 1.2  1993/11/17  18:15:22  thoth
// restriction functions now go in the individual image implementation modules.
//
// Revision 1.1  1993/10/20  18:58:47  thoth
// Initial revision
//
// Revision 1.2  93/05/27  11:36:17  thoth
// Copyright Notices
// 
// Revision 1.1  93/05/26  17:15:26  thoth
// Initial revision
// 

#include "FloatCI.h"
#include "ClosureI.h"

//
//

#include "restrict.h"

IA_BaseImage<IA_Point<int>,float> *restrict_toD(const IA_BaseImage<IA_Point<double>, float> *im, const IA_Set<IA_Point<int> > &ips) {
    return restrictC_toD(im, ips);
}

//
//

class blah : public IA_ClosureI<IA_FloatPoint,float> {
  public:
    blah()
    :IA_ClosureI<IA_FloatPoint,float>(IA_FloatPointSet()) {}
    ostream &print_this(ostream &o) const { return o; }
    float operator()(const IA_FloatPoint&) const { return 0; }
    IA_ClosureI<IA_FloatPoint,float> * clone_self() const { return 0; }
};

static void dummy001()
{
    IA_Image<IA_FloatPoint,float>	i3(blah()), i2(i3);
    IA_Image<IA_FloatPoint,float>	i1(i2);
    i1=i2;
    i1.restrict(IA_IntPointSet());

    compose(i1, (IA_FloatPoint(*)(const IA_FloatPoint&))0);
    compose(i1, *(IA_Closure<IA_FloatPoint, IA_FloatPoint>*)0);
}
