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

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


//
// $Log: BaseNbh.h,v $

#ifndef ClosureNbh_h_
#define ClosureNbh_h_

#include "BaseNbh.h"

template <class P, class Q>
class IA_ClosureNbh :
public IA_BaseNbh<P,Q> {

public:

    IA_ClosureNbh(const IA_Set<Q> &s) :IA_BaseNbh<P,Q>(s) { }

    // default assignment, copy constructor, and destructor are just fine.

    virtual IA_ClosureNbh<P,Q> *clone_self() const =0;

    // Users who derive from this class must still define
    // IA_Set<P> operator() (const Q&) const;
    // IA::Type type() const;
    // ostream& print_this(ostream&) const;
};

#endif // ClosureNbh_h_
