00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00030 #include "arts.h"
00031 #include <map>
00032 #include "matpackI.h"
00033 #include "array.h"
00034 #include "auto_wsv_groups.h"
00035 #include "wsv_aux.h"
00036 
00038 std::map<String, Index> WsvMap;
00039 
00040 void define_wsv_map()
00041 {
00042   extern const Array<WsvRecord> wsv_data;
00043   extern std::map<String, Index> WsvMap;
00044 
00045   for ( Index i=0 ; i<wsv_data.nelem() ; ++i)
00046     {
00047       WsvMap[wsv_data[i].Name()] = i;
00048     }
00049 }
00050 
00051 
00052 ostream& operator<<(ostream& os, const WsvRecord& wr)
00053 {
00054   extern const ArrayOfString wsv_group_names;
00055 
00056   os << "\n*--------------------------------------------------------------*\n"
00057      << "Workspace variable = " << wr.Name() 
00058      << "\n----------------------------------------------------------------\n"
00059      << "\n" << wr.Description() << "\n" 
00060      << "\n----------------------------------------------------------------\n"
00061      << "Group = " << wsv_group_names[wr.Group()]
00062      << "\n*--------------------------------------------------------------*\n";
00063 
00064   return os;
00065 }