#
#  Goal: This is the basic header for each odf file.
#
#  By accessing this software, HEADER.PL, you are duly informed of and
#  agree to be bound by the conditions described below in this notice:
#   
#  This software product, HEADER.PL, is developed by Bradley Huffaker and
#  and copyrighted(C) 1998 by the University of California, San Diego (UCSD), 
#  with all rights reserved.  UCSD administers the NSF grant to CAIDA,
#  number NCR-9711092, under which this code was developed. 
#
#  There is no charge for HEADER.PL software. You can redistribute it and/or
#  modify it under the terms of the GNU General Public License, v. 2 dated
#  June 1991 which is incorporated by reference herein.  HEADER.PL is
#  distributed WITHOUT ANY WARRANTY, IMPLIED OR EXPRESS, OF
#  MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE or that the use of
#  it will not infringe on any third party's intellectual property
#  rights.
#   
#  You should have received a copy of the GNU GPL along with the HEADER.PL
#  program.  Copies can also be obtained from
#  http://www.gnu.org/copyleft/gpl.html or by writing to
#   
#                        University of California, San Diego
#                        SDSC/CAIDA
#                        9500 Gilman Dr., MS-0505
#                        La Jolla, CA 92093 - 0505  USA
#   
#   Or contact INFO@CAIDA.ORG

sub Header
{
return<<EOP;
# t number
#       (total number of nodes)
#       Must be at the beginning of the file.
#       number          - the number of nodes that will be in the file (int)
#
# T number
#       (total number of links)
#       Must be at the beginning of the file.
#       number          -  the number of links that will used (int)
#
# n node_index x y name
# N node_index lat long name
# ? node_index name
#       (node)
#       node_index      - unique node identifier (int)
#       site_index      - identifier node's site (int)
#       x               - the x location on map (positive int)
#       y               - the y location on map (positive int)
#       lat             - latitude (float)
#       long            - longitude (float)
#       name            - name of the node (string no spaces)
#
# g group_index key num_enters description
#       (group_gory)
#       group_index     - unique ValuesGroup identifier (int)
#       num_enters      - number of entries (int)
#       description     - description of ValuesGroup (string up to \\n)
#
#       key             - This is a single character which signals the type
#                         of data that this group will contain (char)
#               d       - group contains floats
#               s       - group contains strings
#
# f group_index string'string2'string3'....
#       (fields of each ValuesGroup)
#       group_index     - identifier for the ValuesGroup which has
#                         these fields (int)
#       string1         - field header for the sub Menu
#
# v node_index group_index value1'value2'value3 ...
# V link_index group_index value1'value2'value3 ...
#       (values for the ValuesGroup)
#       node_index      - identifier for the node (int)
#       link_index      - identifier for the link (int)
#       group_index     - identifier for the ValuesGroup which holds
#                         these values (int)
#       value1          - values for each column (float)
#
# l linkidx n_idx1 n_idx2
# L linkidx n_idx1 n_idx2
#       (link)
#       l               - unidirectional";
#       L               - bidirectional";
#       linkidx         - the index of this link into an array
#       nidx1           - the index of the node that is the client
#       nidx2           - the index of the node that is the server
#
# p pathidx num_nodes n_idx1 n_idx2 n_idx3 ...
# P pathidx num_nodes n_idx1 n_idx2 n_idx3 ...
#       (path)
#       p               - unidirectional
#       P               - bidirectional
#       pathidx         - the index of this path
#       num_nodes       - the number of nodes in the paths
#       n_idx*          - the index of the nodes on this path
EOP
}

1;
