/* -*- mode: c++ -*- 
*/
/* 

    GIFT, a flexible content based image retrieval system.
    Copyright (C) 1998, 1999, 2000 CUI, University of Geneva

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

*/
// -*- Mode: c++ -*-
#ifndef _CALGORITHMIDLIST
#define _CALGORITHMIDLIST
#include <algorithm>
#include <string>
#include <set>
#include <functional>

/** This is in fact a set of algorithms,
    because we need to find out quickly about
    memberships 

    @Author: Wolfgang Müller
*/
    
class CAlgorithmIDList:public set<string>{
  /**  */
  typedef string CElementType;
  /**  */
  string mID;
 public:
  /**  */
  void setID(const string& inID);
  /**  */
  string getID()const;
  /**  */
  void addElement(const CElementType&);
  /**  */
  bool isMember(const CElementType&)const;
  /**  */
  string toXML()const;
};

/** Sort the lists by their ID. 
    This we need because of CAlgorithmIDListList.*/
class CSortByID_AIDL:binary_function<CAlgorithmIDList,
		     CAlgorithmIDList,bool>{
public:
  bool operator()(const CAlgorithmIDList& l,
		  const CAlgorithmIDList& t);
};



#endif

Documentation generated by muellerw@pc7170 on Fre Sep 29 14:43:08 CEST 2000