casacore
TaQLShow.h
Go to the documentation of this file.
1//# TaQLShow.h: Class to show various TaQL-related info
2//# Copyright (C) 2016
3//# Associated Universities, Inc. Washington DC, USA.
4//#
5//# This library is free software; you can redistribute it and/or modify it
6//# under the terms of the GNU Library General Public License as published by
7//# the Free Software Foundation; either version 2 of the License, or (at your
8//# option) any later version.
9//#
10//# This library is distributed in the hope that it will be useful, but WITHOUT
11//# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12//# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13//# License for more details.
14//#
15//# You should have received a copy of the GNU Library General Public License
16//# along with this library; if not, write to the Free Software Foundation,
17//# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
18//#
19//# Correspondence concerning AIPS++ should be addressed as follows:
20//# Internet email: aips2-request@nrao.edu.
21//# Postal address: AIPS++ Project Office
22//# National Radio Astronomy Observatory
23//# 520 Edgemont Road
24//# Charlottesville, VA 22903-2475 USA
25//#
26//# $Id$
27
28#ifndef TABLES_TAQLSHOW_H
29#define TABLES_TAQLSHOW_H
30
31//# Includes
32#include <casacore/casa/aips.h>
33#include <casacore/tables/TaQL/TaQLNodeRep.h>
34#include <casacore/casa/Quanta/UnitName.h>
35#include <casacore/casa/Arrays/Vector.h>
36#include <map>
37#include <ostream>
38
39namespace casacore { //# NAMESPACE CASACORE - BEGIN
40
41// <summary>
42// Class to show various TaQL-related info
43// </summary>
44
45// <use visibility=local>
46
47// <reviewed reviewer="" date="" tests="tTaQLNode">
48// </reviewed>
49
50// <prerequisite>
51//# Classes you should understand before using this one.
52// <li> <linkto group=TableGram.h#TableGramFunctions>TableGram</linkto>
53// <li> Note 199 describing
54// <a href="../notes/199.html">
55// TaQL</a>
56// </prerequisite>
57
58// <synopsis>
59// TaQLShow::getInfo is called by the TaQL help (or show) command.
60// It returns a string (with newlines) containing the requested help info.
61//
62// Note that a command like 'help func mscal' command calls the getInfo function in
63// the dynamically loaded mscal UDF library.
64// </synopsis>
65
66// <motivation>
67// It is nice if the user can get online TaQL help.
68// </motivation>
69
71{
72public:
73 static String getInfo (const Vector<String>& parts,
74 const TaQLStyle& style);
75 static String showTable (const Vector<String>& parts);
76 static String showCommand (const String& cmd);
77 static String showFuncs (const String& type,
78 const Vector<String>& parts,
79 const TaQLStyle& style);
80 static void showUnitKind (std::ostream& os, const UnitVal& kind,
81 const std::map<String, UnitName>& units);
82 static String showUnits (const String& type);
83 static String showMeasTypes (const String& type);
84};
85
86
87} //# NAMESPACE CASACORE - END
88
89#endif
String: the storage and methods of handling collections of characters.
Definition: String.h:225
static void showUnitKind(std::ostream &os, const UnitVal &kind, const std::map< String, UnitName > &units)
static String showUnits(const String &type)
static String showTable(const Vector< String > &parts)
static String getInfo(const Vector< String > &parts, const TaQLStyle &style)
static String showCommand(const String &cmd)
static String showMeasTypes(const String &type)
static String showFuncs(const String &type, const Vector< String > &parts, const TaQLStyle &style)
this file contains all the compiler specific defines
Definition: mainpage.dox:28