~ubuntu-branches/ubuntu/vivid/quantlib-swig/vivid

« back to all changes in this revision

Viewing changes to SWIG/operators.i

  • Committer: Bazaar Package Importer
  • Author(s): Dirk Eddelbuettel
  • Date: 2007-12-26 08:10:08 UTC
  • mfrom: (1.1.6 upstream) (2.1.2 lenny)
  • Revision ID: james.westby@ubuntu.com-20071226081008-cjq979mvtxydli4r
New upstream release 0.9.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
 
25
25
%{
26
26
typedef QuantLib::BoundaryCondition<QuantLib::TridiagonalOperator>
27
 
        BoundaryCondition;
 
27
        DefaultBoundaryCondition;
28
28
%}
29
29
 
30
30
#if defined(SWIGJAVA) || defined(SWIGCSHARP)
31
 
%rename(_BoundaryCondition) BoundaryCondition;
 
31
%rename(_BoundaryCondition) DefaultBoundaryCondition;
32
32
#else
33
 
%ignore BoundaryCondition;
 
33
%ignore DefaultBoundaryCondition;
34
34
#endif
35
 
class BoundaryCondition {
 
35
class DefaultBoundaryCondition {
36
36
  public:
37
37
    enum Side { None, Upper, Lower };
38
38
#if defined(SWIGJAVA) || defined(SWIGCSHARP)
39
39
  private:
40
 
    BoundaryCondition();
 
40
    DefaultBoundaryCondition();
41
41
#endif
42
42
};
43
 
%template(BoundaryCondition) boost::shared_ptr<BoundaryCondition>;
44
 
%extend boost::shared_ptr<BoundaryCondition> {
45
 
    static const BoundaryCondition::Side NoSide = BoundaryCondition::None;
46
 
    static const BoundaryCondition::Side Upper = BoundaryCondition::Upper;
47
 
    static const BoundaryCondition::Side Lower = BoundaryCondition::Lower;
 
43
%template(BoundaryCondition) boost::shared_ptr<DefaultBoundaryCondition>;
 
44
%extend boost::shared_ptr<DefaultBoundaryCondition> {
 
45
    static const DefaultBoundaryCondition::Side NoSide =
 
46
        DefaultBoundaryCondition::None;
 
47
    static const DefaultBoundaryCondition::Side Upper =
 
48
        DefaultBoundaryCondition::Upper;
 
49
    static const DefaultBoundaryCondition::Side Lower =
 
50
        DefaultBoundaryCondition::Lower;
48
51
}
49
52
 
50
53
%{
51
54
using QuantLib::NeumannBC;
52
55
using QuantLib::DirichletBC;
53
 
typedef boost::shared_ptr<BoundaryCondition> NeumannBCPtr;
54
 
typedef boost::shared_ptr<BoundaryCondition> DirichletBCPtr;
 
56
typedef boost::shared_ptr<DefaultBoundaryCondition> NeumannBCPtr;
 
57
typedef boost::shared_ptr<DefaultBoundaryCondition> DirichletBCPtr;
55
58
%}
56
59
 
57
60
%rename(NeumannBC) NeumannBCPtr;
58
 
class NeumannBCPtr: public boost::shared_ptr<BoundaryCondition> {
 
61
class NeumannBCPtr: public boost::shared_ptr<DefaultBoundaryCondition> {
59
62
  public:
60
63
    %extend {
61
 
        NeumannBCPtr(Real value, BoundaryCondition::Side side) {
 
64
        NeumannBCPtr(Real value, DefaultBoundaryCondition::Side side) {
62
65
            return new NeumannBCPtr(new NeumannBC(value, side));
63
66
        }
64
67
    }
65
68
};
66
69
 
67
70
%rename(DirichletBC) DirichletBCPtr;
68
 
class DirichletBCPtr: public boost::shared_ptr<BoundaryCondition> {
 
71
class DirichletBCPtr: public boost::shared_ptr<DefaultBoundaryCondition> {
69
72
  public:
70
73
    %extend {
71
 
        DirichletBCPtr(Real value, BoundaryCondition::Side side) {
 
74
        DirichletBCPtr(Real value, DefaultBoundaryCondition::Side side) {
72
75
            return new DirichletBCPtr(new DirichletBC(value, side));
73
76
        }
74
77
    }