X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Ftinfos.h;h=657a1cd7a5bd16cbb875d1e331f706adaf3ec01f;hp=de799aa9bac6fc8e83df30fab20760adde450619;hb=725021581cc862520c1f04b253ecb86f28032f69;hpb=6b3768e8c544739ae53321539cb4d1e3112ded1b diff --git a/ginac/tinfos.h b/ginac/tinfos.h index de799aa9..657a1cd7 100644 --- a/ginac/tinfos.h +++ b/ginac/tinfos.h @@ -2,50 +2,93 @@ * * Values for a do-it-yourself typeinfo scheme. */ -#ifndef _TINFOS_H_ -#define _TINFOS_H_ +/* + * GiNaC Copyright (C) 1999-2002 Johannes Gutenberg University Mainz, Germany + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ -#define TINFO_BASIC 0x00000001U +#ifndef __GINAC_TINFOS_H__ +#define __GINAC_TINFOS_H__ -#define TINFO_EXPAIRSEQ 0x00010001U -#define TINFO_ADD 0x00011001U -#define TINFO_MUL 0x00011002U +namespace GiNaC { -#define TINFO_SYMBOL 0x00020001U -#define TINFO_CONSTANT 0x00021001U +const unsigned TINFO_basic = 0x00000001U; -#define TINFO_EXPRSEQ 0x00030001U -#define TINFO_FUNCTION 0x00031001U -#define TINFO_NCMUL 0x00031002U -// #define TINFO_NFUNCTION 0x00031003U +const unsigned TINFO_expairseq = 0x00010001U; +const unsigned TINFO_add = 0x00011001U; +const unsigned TINFO_mul = 0x00011002U; -#define TINFO_LST 0x00040001U +const unsigned TINFO_symbol = 0x00020001U; +const unsigned TINFO_constant = 0x00021001U; -#define TINFO_MATRIX 0x00050001U +const unsigned TINFO_exprseq = 0x00030001U; +const unsigned TINFO_function = 0x00031001U; +const unsigned TINFO_fderivative = 0x00032001U; +const unsigned TINFO_ncmul = 0x00031002U; -#define TINFO_POWER 0x00060001U +const unsigned TINFO_lst = 0x00040001U; -#define TINFO_RELATIONAL 0x00070001U +const unsigned TINFO_matrix = 0x00050001U; -#define TINFO_FAIL 0x00080001U +const unsigned TINFO_power = 0x00060001U; -#define TINFO_NUMERIC 0x00090001U +const unsigned TINFO_relational = 0x00070001U; -#define TINFO_SERIES 0x000a0001U +const unsigned TINFO_fail = 0x00080001U; -#define TINFO_INDEXED 0x000b0001U -#define TINFO_ALGEBRA 0x000b1001U -#define TINFO_CLIFFORD 0x000b1101U -#define TINFO_COLOR 0x000b1201U -#define TINFO_ISOSPIN 0x000b1301U -#define TINFO_SIMP_LOR 0x000b1401U +const unsigned TINFO_numeric = 0x00090001U; -#define TINFO_STRUCTURE 0x000c0001U -// reserved up to 0x000cffffU -// for user defined structures +const unsigned TINFO_pseries = 0x000a0001U; + +const unsigned TINFO_indexed = 0x000b0001U; +const unsigned TINFO_color = 0x000b1000U; +// reserved up to 0x000b10ffU +// for color algebras (only used for return_type_tinfo()) +const unsigned TINFO_clifford = 0x000b1100U; +// reserved up to 0x000b11ffU +// for clifford algebras (only used for return_type_tinfo()) -#define TINFO_IDX 0x000d0001U -#define TINFO_COLORIDX 0x000d1001U -#define TINFO_LORENTZIDX 0x000d1002U +const unsigned TINFO_structure = 0x000c0001U; +// reserved up to 0x000cffffU +// for user defined structures -#endif // ndef _TINFOS_H_ +const unsigned TINFO_idx = 0x000d0001U; +const unsigned TINFO_varidx = 0x000d1001U; +const unsigned TINFO_spinidx = 0x000d2001U; + +const unsigned TINFO_tensor = 0x000e0001U; +const unsigned TINFO_tensdelta = 0x000e1001U; +const unsigned TINFO_tensmetric = 0x000e1002U; +const unsigned TINFO_minkmetric = 0x000e2001U; +const unsigned TINFO_spinmetric = 0x000e2002U; +const unsigned TINFO_tensepsilon = 0x000e1003U; +const unsigned TINFO_su3one = 0x000e1008U; +const unsigned TINFO_su3t = 0x000e1009U; +const unsigned TINFO_su3f = 0x000e100aU; +const unsigned TINFO_su3d = 0x000e100bU; +const unsigned TINFO_diracone = 0x000e100cU; +const unsigned TINFO_diracgamma = 0x000e100dU; +const unsigned TINFO_diracgamma5 = 0x000e100eU; +const unsigned TINFO_diracgammaL = 0x000e100fU; +const unsigned TINFO_diracgammaR = 0x000e1010U; + +const unsigned TINFO_wildcard = 0x000f0001U; + +const unsigned TINFO_symmetry = 0x00100001U; + +} // namespace GiNaC + +#endif // ndef __GINAC_TINFOS_H__