X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fflags.h;h=60c10fed2034862ade164e5cee32be8a9b4d11e9;hp=1b11dceb635ad41ca37b766b1405630acbc1bb44;hb=89779632ca81383a8fa44244d7825947638e7fbd;hpb=383d5eb3b0f0506810d9105a268f939125bfc347 diff --git a/ginac/flags.h b/ginac/flags.h index 1b11dceb..60c10fed 100644 --- a/ginac/flags.h +++ b/ginac/flags.h @@ -3,7 +3,7 @@ * Collection of all flags used through the GiNaC framework. */ /* - * GiNaC Copyright (C) 1999-2001 Johannes Gutenberg University Mainz, Germany + * 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 @@ -23,17 +23,18 @@ #ifndef __GINAC_FLAGS_H__ #define __GINAC_FLAGS_H__ -#ifndef NO_NAMESPACE_GINAC namespace GiNaC { -#endif // ndef NO_NAMESPACE_GINAC class expand_options { public: enum { - expand_trigonometric = 0x0001 + expand_trigonometric = 0x0001, + expand_indexed = 0x0002, + expand_function_args = 0x0004 }; }; +/** Flags to control series expansion. */ class series_options { public: enum { @@ -41,34 +42,38 @@ public: }; }; +/** Switch to control algorithm for determinant computation. */ class determinant_algo { public: enum { - automatic, - gauss, - divfree, - laplace, - bareiss + automatic, ///< Let the system choose + gauss, ///< Gauss elimiation + divfree, ///< Division-free elimination + laplace, ///< Laplace (or minor) elimination + bareiss ///< Bareiss fraction-free elimination }; }; +/** Switch to control algorithm for linear system solving. */ class solve_algo { public: enum { - automatic, - gauss, - divfree, - bareiss + automatic, ///< Let the system choose + gauss, ///< Gauss elimiation + divfree, ///< Division-free elimination + bareiss ///< Bareiss fraction-free elimination }; }; +/** Flags to store information about the state of an object. + * @see basic::flags */ class status_flags { public: enum { - dynallocated = 0x0001, - evaluated = 0x0002, - expanded = 0x0004, - hash_calculated = 0x0008 + dynallocated = 0x0001, ///< Heap-allocated (i.e. created by new if we want to be clever and bypass the stack, @see ex::construct_from_basic() ) + evaluated = 0x0002, ///< .eval() has already done its job + expanded = 0x0004, ///< .expand(0) has already done its job (other expand() options ignore this flag) + hash_calculated = 0x0008 ///< .calchash() has already done its job }; }; @@ -125,13 +130,7 @@ public: has_indices, // object has at least one index // answered by class idx - idx, - - // answered by class coloridx - coloridx, - - // answered by class lorentzidx - lorentzidx + idx }; }; @@ -144,27 +143,18 @@ public: }; }; -class csrc_types { -public: - enum { - ctype_float, - ctype_double, - ctype_cl_N - }; -}; - +/** Strategies how to clean up the function remember cache. + * @see remember_table */ class remember_strategies { public: enum { - delete_never, // let table grow undefinitely, not recommmended, but currently default - delete_lru, // least recently used - delete_lfu, // least frequently used - delete_cyclic // first (oldest) one in list + delete_never, ///< Let table grow undefinitely + delete_lru, ///< Least recently used + delete_lfu, ///< Least frequently used + delete_cyclic ///< First (oldest) one in list }; }; -#ifndef NO_NAMESPACE_GINAC } // namespace GiNaC -#endif // ndef NO_NAMESPACE_GINAC #endif // ndef __GINAC_FLAGS_H__