CFHT HOME Classes of libCFHT++

up: Back to Software Index
libCFHT++ is mostly just a subset of code straight out of GNU's libg++, and Classes generated from libg++ templates (using the genclass utility). Here's a list of the files (just a dump of pegasus/libCFHT++/Index).
  Makefile		GNU Makefile for libCFHT++

  ArgVal.hh		A Class which auto-converts between int/float/string		See ArgVal.hh

  ArgMap-gen.diff	ArgMap has a few diffs from the template gen'd output

  ArgMap.hh		Additional functionality for String/ArgVal pair class		See ArgMap.hh		Routines to read/save ArgMaps to enviroment variables		Routines to read/save ArgMaps to command line opts	Routines to read/save ArgMaps to various text formats

  File.hh		Class that locates files, determines permissions, etc		See File.hh

  Directory.hh		Array of File objects, indexed by name (Strings)
  Glob.h		Class for filename globbing (matches *'s and ?'s)

  LogStream.hh		Stream for log message writing (wrapper for cfht_log)		See LogStream.hh

  ProcInfo.hh		Calculates rough profiling and changes ps-name		See ProcInfo.hh

  SignalCatcher.hh	Class to help set up signal handlers	See SignalCatcher.hh

  date_util.hh		RFC Date generator and comparator		See date_util.hh

  str_util.hh		General functions for altering/parsing strings		See str_util.hh

  std_defs.hh		Commonly needed define's and hacks

  StrBuf.hh		A wrapper for strstream to use it as a buffer

  cygwin32.c		Hack to suppress some cygwin b18 warnings

# ------------------------------------------------------------------------

  std.h				(Copied straight from libg++-
  builtin.h			(Copied straight from libg++-
  Pix.h				(Copied straight from libg++-
  String.h			(Copied straight from libg++-			(Copied straight from libg++-
  String.defs.h			(Copied straight from libg++-
  fnmatch.c			(Copied straight from GNU software)
  fnmatch.h			(Copied straight from GNU software)

  ArgKey.defs.h			(Auto-generated from GNU templates)		(Auto-generated from GNU templates)
  ArgKey.ArgVal.Map.h.orig	(Auto-generated from GNU templates)
  ArgKey.ArgVal.Map.h		(Patched according to ArgMap-gen.diff)	(Auto-generated from GNU templates)
  ArgKey.ArgVal.AVLMap.h.orig	(Auto-generated from GNU templates)
  ArgKey.ArgVal.AVLMap.h	(Patched according to ArgMap-gen.diff)		(Auto-generated from GNU templates)
  ArgKey.ArgMap.Map.h.orig	(Auto-generated from GNU templates)
  ArgKey.ArgMap.Map.h		(Patched according to ArgMap-gen.diff)	(Auto-generated from GNU templates)
  ArgKey.ArgMap.AVLMap.h.orig	(Auto-generated from GNU templates)
  ArgKey.ArgMap.AVLMap.h	(Patched according to ArgMap-gen.diff)		(Auto-generated from GNU templates)
  String.File.AVLMap.h		(Auto-generated from GNU templates)		(Auto-generated from GNU templates)
  String.File.Map.h.orig	(Auto-generated from GNU templates)
  String.File.Map.h		(Patched according to ArgMap-gen.diff)
The main class that needs extra documentation here is ``ArgMap''. ArgMap is a general class for storing anything that has the form "name=value" in a data structure for C++. There is very little original code here, because the type was built from pieces provided by the folks at the FSF. The Gnu info pages contain most of the information about how the data types behave. Refer to them here, or use "M-x info" inside emacs.


Relevant Gnu info pages

Sidik Isani,