20 int main(
int argc, 
char **argv)
 
   29     JParser<> zap(
"Example program to test fixed length array class.");
 
   35   catch(
const exception &error) {
 
   36     FATAL(error.what() << endl);
 
   49     JArray<1, int> array(i0);
 
   58     JArray<2, int> array(i0, i1);
 
   68     typedef JArray<N,   int>       JArray1_t;
 
   69     typedef JArray<N-1, 
int>       JArray2_t;
 
   73     for (JArray1_t::iterator i = array.begin(); i != array.end(); ++i) {
 
   79       copy(array.begin(), array.end(), ostream_iterator<int>(cout, 
" "));
 
   84       JArray1_t buffer = array + array;
 
   86       for (
int i = 0; i != 
N; ++i) {
 
   87         ASSERT(2*array[i] == buffer[i]);
 
   92       JArray2_t buffer = array.pop_front();
 
   96         copy(buffer.begin(), buffer.end(), ostream_iterator<int>(cout, 
" "));
 
  100       for (
int i = 0; i != N-1; ++i) {
 
  101         ASSERT(array[i+1] == buffer[i]);
 
  106       JArray1_t buffer(array.pop_back(), array[N-1]);
 
  112       JArray2_t buffer = array.pop_back();
 
  116         copy(buffer.begin(), buffer.end(), ostream_iterator<int>(cout, 
" "));
 
  120       for (
int i = 0; i != N-1; ++i) {
 
  121         ASSERT(array[i] == buffer[i]);
 
  127     JArray<3, int> array(1, 2, 3);
 
  129     JArray<3, const int> 
p3(array);
 
  132       copy(p3.begin(), p3.end(), ostream_iterator<int>(cout, 
" "));
 
  136     ASSERT(array[0] == p3[0]);
 
  138     JArray<2, const int> 
p2(p3.pop_front());
 
  141       copy(
p2.begin(), 
p2.end(), ostream_iterator<int>(cout, 
" "));
 
  147     JArray<1, const int> 
p1(
p2.pop_front());
 
  150       copy(
p1.begin(), 
p1.end(), ostream_iterator<int>(cout, 
" "));
 
  160     JMultiKey<2, int> key;
 
  163     key.second.first = 1;
 
  167     JArray<3, int> array(key, i);
 
  170       copy(array.begin(), array.end(), ostream_iterator<int>(cout, 
" "));
 
  174     ASSERT(array[0] == key.first);
 
  175     ASSERT(array[1] == key.second.first);
 
Utility class to parse command line options. 
 
int main(int argc, char *argv[])
 
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance. 
 
then JShowerPostfit f $INPUT_FILE o $OUTPUT_FILE N
 
#define ASSERT(A,...)
Assert macro. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
General purpose messaging. 
 
Utility class to parse command line options. 
 
void copy(const Head &from, JHead &to)
Copy header from from to to.