This website is no longer maintained. Its content may be obsolete. Please visit http://home.cern/ for current CERN information.
00001 // -*- C++ -*- 00002 // AID-GENERATED 00003 // ========================================================================= 00004 // This class was generated by AID - Abstract Interface Definition 00005 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it. 00006 // ========================================================================= 00007 #ifndef AIDA_IRANGESET_H 00008 #define AIDA_IRANGESET_H 1 00009 00010 // This file is part of the AIDA library 00011 // Copyright (C) 2002 by the AIDA team. All rights reserved. 00012 // This library is free software and under the terms of the 00013 // GNU Library General Public License described in the LGPL.txt 00014 00015 #include <vector> 00016 00017 namespace AIDA { 00018 00042 class IRangeSet { 00043 00044 public: 00046 virtual ~IRangeSet() { /* nop */; } 00047 00052 virtual const std::vector<double> & lowerBounds() = 0; 00053 00058 virtual const std::vector<double> & upperBounds() = 0; 00059 00065 virtual void include(double xMin, double xMax) = 0; 00066 00072 virtual void exclude(double xMin, double xMax) = 0; 00073 00077 virtual void includeAll() = 0; 00078 00082 virtual void excludeAll() = 0; 00083 00084 /* 00085 * @return Return true if the point is in range 00086 */ 00087 virtual bool isInRange(double point) = 0; 00088 00094 virtual int size() = 0; 00095 00096 /* 00097 * Define +infinity according to specific implementation 00098 * @return Numeric definition for +infinity 00099 */ 00100 virtual double PLUS_INF() = 0; 00101 00102 /* 00103 * Define -infinity according to specific implementation 00104 * @return Numeric definition for -infinity 00105 */ 00106 virtual double MINUS_INF() = 0; 00107 }; // class 00108 }; // namespace AIDA 00109 #endif /* ifndef AIDA_IRANGESET_H */