28 #ifndef CASA_COMPARE_H
29 #define CASA_COMPARE_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/casa/Utilities/DataType.h>
50 typedef int ObjCompareFunc (
const void*,
const void*);
76 virtual int comp (
const void* obj1,
const void* obj2)
const = 0;
114 static int compare (
const void* obj1,
const void* obj2);
115 virtual int comp (
const void* obj1,
const void* obj2)
const;
145 virtual int comp(
const void * obj1,
const void * obj2)
const;
175 virtual int comp(
const void * obj1,
const void * obj2)
const;
197 virtual int comp(
const void * obj1,
const void * obj2)
const;
212 virtual int comp(
const void * obj1,
const void * obj2)
const;
218 #ifndef CASACORE_NO_AUTO_TEMPLATES
219 #include <casacore/casa/Utilities/Compare.tcc>
abstract base class for comparing two objects
virtual int comp(const void *obj1, const void *obj2) const =0
Compare two objects, and return.
virtual DataType dataType() const
Get the data type of a straight-forward sort comparison in ObjCompare.
Comparison class that is always true.
virtual int comp(const void *obj1, const void *obj2) const
Comparison function that gives always true.
virtual ~CompareAlwaysTrue()
Integer comparison class with intervals.
CompareIntervalInt(Int64 interval, Int64 start)
Construct from the given interval values.
virtual ~CompareIntervalInt()
virtual int comp(const void *obj1, const void *obj2) const
Compare the interval the left and right value belong to.
Real comparison class with intervals.
virtual int comp(const void *obj1, const void *obj2) const
Compare the interval the left and right value belong to.
CompareIntervalReal(Double interval, Double start)
Construct from the given interval values.
virtual ~CompareIntervalReal()
Case-insensitive string comparison class.
virtual int comp(const void *obj1, const void *obj2) const
Compare the left and right string value in a case-insensitive way.
virtual int comp(const void *obj1, const void *obj2) const
Compare two objects, and return.
virtual DataType dataType() const
Get the data type of the sort comparison.
static int compare(const void *obj1, const void *obj2)
Compare two objects, and return.
this file contains all the compiler specific defines
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)