File: MMMatrix.h

package info (click to toggle)
dynare 4.3.0-2
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 40,640 kB
  • sloc: fortran: 82,231; cpp: 72,734; ansic: 28,874; pascal: 13,241; sh: 4,300; objc: 3,281; yacc: 2,833; makefile: 1,288; lex: 1,162; python: 162; lisp: 54; xml: 8
file content (46 lines) | stat: -rw-r--r-- 1,039 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/* $Header: /var/lib/cvs/dynare_cpp/sylv/testing/MMMatrix.h,v 1.1.1.1 2004/06/04 13:01:13 kamenik Exp $ */

/* Tag $Name:  $ */

#ifndef MM_MATRIX_H
#define MM_MATRIX_H

#include "GeneralMatrix.h"
#include "SylvMemory.h"

#include <string>

using namespace std;

class MMException : public MallocAllocator {
	string message;
public:
	MMException(string mes) : message(mes) {}
	MMException(const char* mes) : message(mes) {}
	const char* getMessage() const {return message.data();}
};

class MMMatrixIn : public MallocAllocator {
	double* data;
	int rows;
	int cols;
public:
	MMMatrixIn(const char* fname);
	~MMMatrixIn();
	const double* getData() const {return data;}
	int size() const {return rows*cols;}
	int row() const {return rows;}
	int col() const {return cols;}
};

class MMMatrixOut : public MallocAllocator {
public:
	static void write(const char* fname, int rows, int cols, const double* data);
	static void write(const char* fname, const GeneralMatrix& m);
};

#endif /* MM_MATRIX_H */

// Local Variables:
// mode:C++
// End: