28     bool less(
const __A__& 
object)
 const 
   30       return this->value < 
object.value;
 
   33     friend std::istream& 
operator>>(std::istream& 
in, __A__& 
object)
 
   35       return in >> 
object.value;
 
   38     friend std::ostream& 
operator<<(std::ostream& out, 
const __A__& 
object)
 
   40       return out << 
object.value;
 
   54     bool less(
const __B__& 
object)
 const 
   56       return this->value < 
object.value;
 
   59     friend std::istream& 
operator>>(std::istream& 
in, __B__& 
object)
 
   61       return in >> 
object.value;
 
   64     friend std::ostream& 
operator<<(std::ostream& out, 
const __B__& 
object)
 
   66       return out << 
object.value;
 
   81     friend std::istream& 
operator>>(std::istream& 
in, __C__& 
object)
 
   83       return in >> 
static_cast<__A__&
>(object) 
 
   84                 >> static_cast<__B__&>(
object);
 
   87     friend std::ostream& 
operator<<(std::ostream& out, 
const __C__& 
object)
 
   89       return out << static_cast<const __A__&>(object) << 
' ' 
   90                  << static_cast<const __B__&>(
object);
 
  101 int main(
int argc, 
char **argv)
 
  113     JParser<> zap(
"Example program to test hierarchical comparisons of objects.");
 
  120   catch(
const exception &error) {
 
  121     FATAL(error.what() << endl);
 
  124   DEBUG(
"before:" << endl);
 
  125   for (buffer_type::const_iterator i = buffer.begin(); i != buffer.end(); ++i) {
 
  129   sort(buffer.begin(), buffer.end());
 
  131   DEBUG(
"after:" << endl);
 
  132   for (buffer_type::const_iterator i = buffer.begin(); i != buffer.end(); ++i) {
 
  136   ASSERT(buffer.size() > 1);
 
  138   for (buffer_type::const_iterator q = buffer.begin(), p = q++; q != buffer.end(); ++p, ++q) {
 
  139     ASSERT((static_cast<const __A__&>(*p) <  static_cast<const __A__&>(*q))    ||
 
  140            (static_cast<const __A__&>(*p) == static_cast<const __A__&>(*q) &&
 
  141             static_cast<const __B__&>(*p) <  static_cast<const __B__&>(*q)));
 
Utility class to parse command line options. 
 
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
 
#define ASSERT(A,...)
Assert macro. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
Template definition of auxiliary base class for comparison of data structures. 
 
General purpose messaging. 
 
std::istream & operator>>(std::istream &in, JAANET::JHead &header)
Read header from input. 
 
Utility class to parse command line options. 
 
Template definition of auxiliary base class for composite data structures composed of base classes wi...
 
#define DEBUG(A)
Message macros. 
 
int main(int argc, char *argv[])