File: KronVector.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 (58 lines) | stat: -rw-r--r-- 1,632 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
47
48
49
50
51
52
53
54
55
56
57
58
/* $Header: /var/lib/cvs/dynare_cpp/sylv/cc/KronVector.h,v 1.1.1.1 2004/06/04 13:00:31 kamenik Exp $ */

/* Tag $Name:  $ */

#ifndef KRON_VECTOR_H
#define KRON_VECTOR_H

#include "Vector.h"

class ConstKronVector;

class KronVector : public Vector {
protected:
	int m;
	int n;
	int depth;
public:
	KronVector() : Vector((double*)0, 0), m(0), n(0), depth(0)  {}
	KronVector(int mm, int nn, int dp); // new instance
	KronVector(Vector& v, int mm, int nn, int dp); // conversion
	KronVector(KronVector&, int i); // picks i-th subvector
	KronVector(const ConstKronVector& v); // new instance and copy
	const KronVector& operator=(KronVector& v)
		{Vector::operator=(v); m=v.m; n=v.n; depth = v.depth; return *this;}
	const KronVector& operator=(const KronVector& v)
		{Vector::operator=(v); m=v.m; n=v.n; depth = v.depth; return *this;}
	const KronVector& operator=(const ConstKronVector& v);
	const KronVector& operator=(const Vector& v);
	int getM() const {return m;}
	int getN() const {return n;}
	int getDepth() const {return depth;}
};

class ConstKronVector : public ConstVector
{
protected:
	int m;
	int n;
	int depth;
public:
	ConstKronVector(const KronVector& v);
	ConstKronVector(const ConstKronVector& v);
	ConstKronVector(const Vector& v, int mm, int nn, int dp);
	ConstKronVector(const ConstVector& v, int mm, int nn, int dp);
	ConstKronVector(const KronVector& v, int i);
	ConstKronVector(const ConstKronVector& v, int i);
	int getM() const {return m;}
	int getN() const {return n;}
	int getDepth() const {return depth;}
};

int power(int m, int depth);

#endif /* KRON_VECTOR */

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