Loading...
Searching...
No Matches
casacore::AipsrcVector< T > Class Template Reference
casa package (libcasa_casa) » System_module

More...

`#include <AipsrcVector.h>`

## Static Public Member Functions

static Bool | find (Vector< T > &value, const String &keyword)
| The find() functions will, given a keyword, return the value of a matched keyword found in the files.
static Bool | find (Vector< T > &value, const String &keyword, const Vector< T > &deflt)
static Bool | find (Vector< T > &value, const String &keyword, const Unit &defun, const Unit &resun)
| These find() functions will, given a keyword, read the values of a matched keyword as a Quantity.
static Bool | find (Vector< T > &value, const String &keyword, const Unit &defun, const Unit &resun, const Vector< T > &deflt)
static uInt | registerRC (const String &keyword, const Vector< T > &deflt)
| Functions to register keywords for later use in get() and set().
static uInt | registerRC (const String &keyword, const Unit &defun, const Unit &resun, const Vector< T > &deflt)
static const Vector< T > | get (uInt keyword)
| Gets are like find, but using registered integers rather than names.
static void | set (uInt keyword, const Vector< T > &deflt)
| Sets allow registered values to be set.
static void | save (uInt keyword)
| Save registered value to $HOME/.aipsrc.
Static Public Member Functions inherited from casacore::Aipsrc
static Bool | find (String &value, const String &keyword)
static Bool | findNoHome (String &value, const String &keyword)
static Bool | find (uInt &value, const String &keyword, Int Nname, const String tname[])
| These finds check a (possible) value of the keyword against a list of coded values provided, and return an index into the list (N if not found).
static Bool | find (uInt &value, const String &keyword, const Vector< String > &tname)
static Bool | find (String &value, const String &keyword, const String &default_value)
| This find usually saves you some lines of code, since you can supply the default you want to use when no such keyword is defined.
static Bool | findNoHome (String &value, const String &keyword, const String &default_value)
static Bool | find (uInt &value, const String &keyword, Int Nname, const String tname[], const String &default_value)
static Bool | find (uInt &value, const String &keyword, const Vector< String > &tname, const String &default_value)
static Bool | findDir (String &foundDir, const String &lastPart="", const Vector< String > &prepends=Vector< String >(), const Vector< String > &appends=Vector< String >(), Bool useStds=True)
| Sets foundDir to the first /firstPart/lastPart path that it finds present on the system, where /firstPart comes from, in order, this list: contents of prepends.
static uInt | registerRC (const String &keyword, const String &default_value)
| Functions to register keywords for later use in get() and set().
static uInt | registerRC (const String &keyword, Int Nname, const String tname[], const String &default_value)
static uInt | registerRC (const String &keyword, const Vector< String > &tname, const String &default_value)
static const String & | get (uInt keyword)
| Gets are like find, but using registered integers rather than names.
static const uInt & | get (uInt &code, uInt keyword)
| get for code
static void | set (uInt keyword, const String &default_value)
| Sets allow registered values to be set.
static void | set (uInt keyword, Int Nname, const String tname[], const String &default_value)
static void | set (uInt keyword, const Vector< String > &tname, const String &default_value)
static void | save (uInt keyword)
| Save a registered keyword value to $HOME/.aipsrc.
static void | save (uInt keyword, const String tname[])
static void | save (uInt keyword, const Vector< String > &tname)
static void | setAipsPath (const String &path=String())
| Set an AIPSPATH that should be used in stead of a global AIPSPATH.
static const String & | aipsRoot ()
| Returns the appropriate Casacore or system variable values.
static const String & | aipsArch ()
static const String & | aipsSite ()
static const String & | aipsHost ()
static const String & | aipsHome ()
| Returns: ~/aips++.
static void | reRead ()
| The reRead() function will reinitialise the static maps and read the aipsrc files again.
static Double | lastRead ()
static const Block< String > & | values ()
| The following functions return the full lists of available data.
static const Block< String > & | patterns ()
static void | show (ostream &oStream)
| The following show() function, useful for debugging, outputs all keyword/value pairs found.
static void | show ()
| Prints all info on cout.
static uInt | genRestore (Vector< String > &namlst, Vector< String > &vallst, const String &fileList)
| The following set is a general set of functions.
static void | genSave (Vector< String > &namlst, Vector< String > &vallst, const String &fnam)
| Save the names/values in file.
static void | genSet (Vector< String > &namlst, Vector< String > &vallst, const String &nam, const String &val)
| Set (new or overwrite) keyword/value pair.
static Bool | genUnSet (Vector< String > &namlst, Vector< String > &vallst, const String &nam)
| Remove a keyword from list (False if not in list).
static Bool | genGet (String &val, Vector< String > &namlst, Vector< String > &vallst, const String &nam)
| Get the value of a keyword.

## Static Private Attributes

static std::mutex | theirMutex
static std::vector< Vector< T > > | tlst
| register list
static std::vector< String > | ntlst

## Additional Inherited Members

Static Protected Member Functions inherited from casacore::Aipsrc
static Bool | find (String &value, const String &keyword, uInt start)
| Actual find function.
static Bool | findNoParse (String &value, const String &keyword, uInt start)
| Actual find function to use during parse() without recursing into parse().
static uInt | registerRC (const String &keyword, std::vector< String > &nlst)
| The registration function.
static void | save (const String keyword, const String val)
| Actual saving.

## Detailed Description

template<class T>
class casacore::AipsrcVector< T >

Read multiple values from the Aipsrc resource files

### Intended use:

Public interface

### Review Status

Reviewed By:
  mhaller
Date Reviewed:
  1997/10/08
Test programs:
  tAipsrcValue

### Prerequisite

- AipsrcValue

### Etymology

A class for getting multiple values from the Aipsrc files

### Synopsis

The available functions (and notes) are the same as in AipsrcValue, but with a Vector result.

### Template Type Argument Requirements

- All types with a >> defined.
  Warning: Since interpretation of the keyword value string is done with the standard input right-shift operator, specialisations are necessary for non-standard cases like Bool and String; They are provided;

### Example

### Motivation

Programs need a way to get multi-valued keywords from the Aipsrc files.

### Thrown Exceptions

- AipsError if the environment variables HOME and/or AIPSPATH not set.

Definition at line 85 of file AipsrcVector.h.

## Member Function Documentation

## find() [1/4]

template<class T>

Bool casacore::AipsrcVector< T >::find | ( | Vector< T > & | value,
|  | const String & | keyword )

static

The find() functions will, given a keyword, return the value of a matched keyword found in the files.

If no match found the function will be False, and the default returned if specified.

## find() [2/4]

template<class T>

Bool casacore::AipsrcVector< T >::find | ( | Vector< T > & | value,
|  | const String & | keyword,
|  | const Unit & | defun,
|  | const Unit & | resun )

static

These find() functions will, given a keyword, read the values of a matched keyword as a Quantity.

If no unit has been given in the keyword value, the defun Unit will be assumed. The value returned will be converted to the resun Unit. If no match found, the default value is returned (see example above).

## find() [3/4]

template<class T>

Bool casacore::AipsrcVector< T >::find | ( | Vector< T > & | value,
|  | const String & | keyword,
|  | const Unit & | defun,
|  | const Unit & | resun,
|  | const Vector< T > & | deflt )

static

## find() [4/4]

template<class T>

Bool casacore::AipsrcVector< T >::find | ( | Vector< T > & | value,
|  | const String & | keyword,
|  | const Vector< T > & | deflt )

static

## get()

template<class T>

const Vector< T > casacore::AipsrcVector< T >::get | ( | uInt | keyword | ) |

static

Gets are like find, but using registered integers rather than names.

## registerRC() [1/2]

template<class T>

uInt casacore::AipsrcVector< T >::registerRC | ( | const String & | keyword,
|  | const Unit & | defun,
|  | const Unit & | resun,
|  | const Vector< T > & | deflt )

static

## registerRC() [2/2]

template<class T>

uInt casacore::AipsrcVector< T >::registerRC | ( | const String & | keyword,
|  | const Vector< T > & | deflt )

static

Functions to register keywords for later use in get() and set().

The returned value is the index for get() and set().

## save()

template<class T>

void casacore::AipsrcVector< T >::save | ( | uInt | keyword | ) |

static

Save registered value to $HOME/.aipsrc.

## set()

template<class T>

void casacore::AipsrcVector< T >::set | ( | uInt | keyword,
|  | const Vector< T > & | deflt )

static

Sets allow registered values to be set.

## Member Data Documentation

## ntlst

template<class T>

std::vector<String> casacore::AipsrcVector< T >::ntlst

inline static private

Definition at line 138 of file AipsrcVector.h.

## theirMutex

template<class T>

std::mutex casacore::AipsrcVector< T >::theirMutex

inline static private

Definition at line 134 of file AipsrcVector.h.

## tlst

template<class T>

std::vector<Vector<T> > casacore::AipsrcVector< T >::tlst

inline static private

register list

Definition at line 137 of file AipsrcVector.h.

The documentation for this class was generated from the following files:

- casa/System/Aipsrc.h
- casa/System/AipsrcVector.h