* Archiving of GiNaC expressions. */
/*
- * GiNaC Copyright (C) 1999 Johannes Gutenberg University Mainz, Germany
+ * GiNaC Copyright (C) 1999-2000 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
#ifndef __GINAC_ARCHIVE_H__
#define __GINAC_ARCHIVE_H__
-#include <ginac/ex.h>
+#include "ex.h"
#include <string>
#include <vector>
class ostream;
class istream;
-#ifndef NO_GINAC_NAMESPACE
+#ifndef NO_NAMESPACE_GINAC
namespace GiNaC {
-#endif // ndef NO_GINAC_NAMESPACE
+#endif // ndef NO_NAMESPACE_GINAC
class lst;
class archive;
friend istream &operator>>(istream &is, archive_node &ar);
public:
+ archive_node() : a(*dummy_ar_creator()), has_expression(false) {} // hack for cint which always requires a default constructor
archive_node(archive &ar) : a(ar), has_expression(false) {}
archive_node(archive &ar, const ex &expr);
~archive_node() {}
void printraw(ostream &os) const;
private:
+ static archive* dummy_ar_creator(void);
+
/** Property data types */
enum property_type {
PTYPE_BOOL,
istream &operator>>(istream &is, archive &ar);
-#ifndef NO_GINAC_NAMESPACE
+#ifndef NO_NAMESPACE_GINAC
} // namespace GiNaC
-#endif // ndef NO_GINAC_NAMESPACE
+#endif // ndef NO_NAMESPACE_GINAC
#endif // ndef __GINAC_ARCHIVE_H__