1
2
/***************************************************************************
2
3
* blitz/update.h Declaration of the _bz_XXXX updater classes
4
* $Id: update.h,v 1.1.1.1 2000/06/19 12:26:10 tveldhui Exp $
5
* $Id: update.h,v 1.5 2004/03/09 21:55:31 julianc Exp $
6
* Copyright (C) 1997-1999 Todd Veldhuizen <tveldhui@oonumerics.org>
7
* Copyright (C) 1997-2001 Todd Veldhuizen <tveldhui@oonumerics.org>
8
9
* This program is free software; you can redistribute it and/or
9
10
* modify it under the terms of the GNU General Public License
21
22
* For more information, please see the Blitz++ Home Page:
22
23
* http://oonumerics.org/blitz/
24
***************************************************************************
26
* Revision 1.1.1.1 2000/06/19 12:26:10 tveldhui
29
* Revision 1.5 1998/03/14 00:04:47 tveldhui
32
* Revision 1.4 1997/07/16 14:51:20 tveldhui
33
* Update: Alpha release 0.2 (Arrays)
35
* Revision 1.3 1997/01/24 14:42:00 tveldhui
38
* Revision 1.2 1997/01/23 03:28:28 tveldhui
41
* Revision 1.1 1997/01/13 22:19:58 tveldhui
25
***************************************************************************/
47
27
#ifndef BZ_UPDATE_H
48
28
#define BZ_UPDATE_H
51
#include <blitz/blitz.h>
30
#include <blitz/blitz.h>
54
32
BZ_NAMESPACE(blitz)
56
34
class _bz_updater_base { };
58
#define BZ_DECL_UPDATER(name,op,symbol) \
59
template<class X, class Y> \
60
class name : public _bz_updater_base { \
62
static inline void update(X& _bz_restrict x, Y y) \
64
static void prettyPrint(string& str) \
36
#define BZ_DECL_UPDATER(name,op,symbol) \
37
template<typename X, typename Y> \
38
class name : public _bz_updater_base { \
40
static inline void update(X& restrict x, Y y) \
42
static void prettyPrint(BZ_STD_SCOPE(string) &str) \
68
template<class X, class Y>
46
template<typename X, typename Y>
69
47
class _bz_update : public _bz_updater_base {
71
static inline void update(X& _bz_restrict x, Y y)
49
static inline void update(X& restrict x, Y y)
74
static void prettyPrint(string& str)
52
static void prettyPrint(BZ_STD_SCOPE(string) &str)