casa
5.7.0-16
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
casa
casacore
casa
Utilities.h
Go to the documentation of this file.
1
//# Utilities.h: Bag of unrelated classes and groups for general use.
2
//# Copyright (C) 1995,1996,1997,2000,2001
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
29
#ifndef CASA_UTILITIES_H
30
#define CASA_UTILITIES_H
31
32
#include <
casacore/casa/aips.h
>
33
34
#include <
casacore/casa/Utilities/Assert.h
>
35
#include <
casacore/casa/Utilities/BinarySearch.h
>
36
#include <
casacore/casa/Utilities/BitVector.h
>
37
#include <
casacore/casa/Utilities/Compare.h
>
38
#include <
casacore/casa/Utilities/Copy.h
>
39
#include <
casacore/casa/Utilities/CountedPtr.h
>
40
#include <
casacore/casa/Utilities/DataType.h
>
41
#include <
casacore/casa/Utilities/DynBuffer.h
>
42
#include <
casacore/casa/Utilities/Fallible.h
>
43
#include <
casacore/casa/Utilities/GenSort.h
>
44
#include <
casacore/casa/Utilities/Notice.h
>
45
#include <
casacore/casa/Utilities/PtrHolder.h
>
46
#include <
casacore/casa/Utilities/RegSequence.h
>
47
#include <
casacore/casa/Utilities/Regex.h
>
48
#include <
casacore/casa/Utilities/Register.h
>
49
#include <
casacore/casa/Utilities/Sequence.h
>
50
#include <
casacore/casa/Utilities/Sort.h
>
51
#include <
casacore/casa/Utilities/SortError.h
>
52
#include <
casacore/casa/BasicSL/String.h
>
53
#include <
casacore/casa/Utilities/ValType.h
>
54
#include <
casacore/casa/Utilities/cregex.h
>
55
56
namespace
casacore
{
//# NAMESPACE CASACORE - BEGIN
57
58
// <module>
59
//
60
// <summary> Classes and global functions for general use </summary>
61
62
// <reviewed reviewer="Friso Olnon" date="1995/03/20" demos="">
63
// </reviewed>
64
65
// <synopsis>
66
//
67
// This module is a bag of unrelated mini-modules, classes and
68
// global functions. The following functional groups can be recognized:
69
// <ul>
70
// <li> Object utilities:
71
// <ul>
72
// <li> <linkto class=ObjCompare>ObjCompare</linkto>
73
// objects with each other. A signature for comparison functions
74
// is defined (required for comparison functions used in the
75
// <linkto class=Sort>Sort</linkto>
76
// class), and one such function is provided.
77
// <li> <linkto group="Copy.h#copy">objcopy/objmove/objset</linkto>
78
// copies objects from one place to another.
79
// <li> <linkto class=Fallible>Mark</linkto>
80
// objects as valid or invalid.
81
// <li> <linkto class=Notice>Notices</linkto>
82
// provide basic support for shared access of data by various objects.
83
// <li> <linkto class=Sort>Sort</linkto>
84
// objects on one or more keys, in ascending or descending order.
85
// <linkto class=GenSort>Fast sorting</linkto>
86
// is provided for certain types of objects.
87
// <li> <linkto group="BinarySearch.h#binarysearch">Binary Search</linkto>
88
// templated functions for sorted containers (ascending or descending
89
// order) are available.
90
// <li> <linkto group="LinearSearch.h#linearsearch">Linear Search</linkto>
91
// templated functions for unsorted containers are available.
92
// </ul>
93
// <li> Logical utilities:
94
// <ul>
95
// <li> <linkto class=assert_>Assertion</linkto>
96
// lets you throw an error when a condition in not fullfilled.
97
// <li> <linkto class=BitVector>Bit vectors</linkto>
98
// are an efficient method to keep True/False information on a set of
99
// items or conditions.
100
// </ul>
101
// <li> Pointer utilities
102
// <ul>
103
// <li> <linkto class=CountedPtr>Counted pointers</linkto>
104
// provide support for reference counting.
105
// <li> <linkto class=PtrHolder>Pointer holders</linkto>
106
// can be used to hold allocated pointers which should be deleted
107
// when an exception is thrown.
108
// </ul>
109
// <li> Datatype utilities
110
// <ul>
111
// <li> <linkto group="DataType.h#DataType">DataType</linkto>
112
// enumerates the possible data types in the table system.
113
// <li> <linkto class=ValType>ValType</linkto>
114
// describes the data types and their undefined values.
115
// <li> <linkto group="Register.h#register">Register</linkto>
116
// provides runtime typing information.
117
// </ul>
118
// <li> Other utilities
119
// <ul>
120
// <li> <linkto class=DynBuffer>Dynamic buffers</linkto>
121
// are used to store data in dynamically allocated buffers.
122
// <li> <linkto class=Regex>Regular expressions</linkto>
123
// are supported by the class <linkto class=Regex>Regex</linkto> and
124
// the associated function library
125
// <a href="Utilities/cregex.html">cregex</a>.
126
// <li> <linkto class=Sequence>Sequences</linkto>
127
// of any datatype can be derived from the base class
128
// <linkto class=Sequence>Sequence</linkto>.
129
// One example is <linkto class=uIntSequence>uIntSequence</linkto>,
130
// provided for general use. Another is
131
// <linkto class=RegSequence>RegSequence</linkto>, exclusively used
132
// by the <linkto group="Register.h#register">Register</linkto> function.
133
// <li> <linkto class=String>Strings</linkto>.
134
// for the C++ preprocessor
135
// </ul>
136
// </ul>
137
//
138
// <note role=tip> You may want to look at the individual header files
139
// to see whether you might not prefer to include only the header
140
// files you really need; it may be more efficient to do so.
141
// </note>
142
//
143
// </synopsis>
144
145
//# <todo asof="1995/03/20">
146
//# <li>
147
//# </todo>
148
149
// </module>
150
151
152
}
//# NAMESPACE CASACORE - END
153
154
#endif
155
DataType.h
Sequence.h
CountedPtr.h
aips.h
SortError.h
BinarySearch.h
BitVector.h
GenSort.h
Sort.h
Register.h
Notice.h
Regex.h
Compare.h
cregex.h
Assert.h
DynBuffer.h
ValType.h
Copy.h
PtrHolder.h
String.h
RegSequence.h
Fallible.h
casacore
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.
Definition:
X11Intrinsic.h:42
Generated on Sun Sep 1 2019 23:32:13 for casa by
1.8.5