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
generic.h
Go to the documentation of this file.
1
//# generic.h: some defines, from the GNU C++ Library
2
//# This may look like C code, but it is really -*- C++ -*-
3
//#
4
//# Copyright (C) 1988 Free Software Foundation
5
//# written by Doug Lea (dl@rocky.oswego.edu)
6
//#
7
//# This file is part of the GNU C++ Library. This library is free
8
//# software; you can redistribute it and/or modify it under the terms of
9
//# the GNU Library General Public License as published by the Free
10
//# Software Foundation; either version 2 of the License, or (at your
11
//# option) any later version. This library is distributed in the hope
12
//# that it will be useful, but WITHOUT ANY WARRANTY; without even the
13
//# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14
//# PURPOSE. See the GNU Library General Public License for more details.
15
//# You should have received a copy of the GNU Library General Public
16
//# License along with this library; if not, write to the Free Software
17
//# Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
18
19
//# $Id$
20
21
#ifndef CASA_GENERIC_H
22
#define CASA_GENERIC_H
23
24
namespace
casacore
{
//# NAMESPACE CASACORE - BEGIN
25
26
/*
27
* See the CPP manual, argument prescan section for explanation
28
*/
29
30
// <summary>Generic gnu macros</summary>
31
// <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="" demos="">
32
// </reviewed>
33
// <group name=def>
34
35
#define g_name2(a,b) gEnErIc2(a,b)
36
#define gEnErIc2(a,b) a ## b
37
38
#define g_name3(a,b,c) gEnErIc3(a,b,c)
39
#define gEnErIc3(a,b,c) a ## b ## c
40
41
#define g_name4(a,b,c,d) gEnErIc4(a,b,c,d)
42
#define gEnErIc4(a,b,c,d) a ## b ## c ## d
43
44
#define GENERIC_STRING(a) gEnErIcStRiNg(a)
45
#define gEnErIcStRiNg(a) #a
46
47
#define g_declare(clas,t) g_name2(clas,declare)(t)
48
#define g_declare2(clas,t1,t2) g_name2(clas,declare2)(t1,t2)
49
50
#define g_implement(clas,t) g_name2(clas,implement)(t)
51
#define g_implement2(clas,t1,t2) g_name2(clas,implement2)(t1,t2)
52
53
//extern genericerror(int,char*);
54
typedef
int (*GPT)(int,
char
*);
55
56
#define g_set_handler(gen,type,x) g_name4(set_,type,gen,_handler)(x)
57
58
#define g_errorhandler(gen,type) g_name3(type,gen,handler)
59
60
#define g_callerror(gen,type,a,b) (*g_errorhandler(gen,type))(a,b)
61
62
// </group>
63
64
65
}
//# NAMESPACE CASACORE - END
66
67
#endif
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