Ice Sheet System Model  4.18
Code documentation
Public Member Functions | Data Fields
RiftStruct Class Reference

#include <RiftStruct.h>

Public Member Functions

 RiftStruct ()
 
 RiftStruct (int numrifts_in, int *riftsnumsegments_in, int **riftssegments_in, int *riftsnumpairs_in, int **riftspairs_in, int *riftsnumpenaltypairs_in, double **riftspenaltypairs_in, int *riftstips_in)
 
 ~RiftStruct ()
 

Data Fields

int numrifts
 
int ** riftspairs
 
double ** riftspenaltypairs
 
int * riftsnumpairs
 
int * riftsnumpenaltypairs
 
int * riftsnumsegments
 
int ** riftssegments
 
int * riftstips
 
double ** state
 

Detailed Description

Definition at line 8 of file RiftStruct.h.

Constructor & Destructor Documentation

◆ RiftStruct() [1/2]

RiftStruct::RiftStruct ( void  )

Definition at line 10 of file RiftStruct.cpp.

10  {/*{{{*/
11 
12  this->numrifts = 0;
13  this->riftsnumsegments = NULL;
14  this->riftssegments = NULL;
15  this->riftsnumpairs = NULL;
16  this->riftspairs = NULL;
17  this->riftsnumpenaltypairs = NULL;
18  this->riftspenaltypairs = NULL;
19  this->riftstips = NULL;
20  this->state = NULL;
21 
22 }/*}}}*/

◆ RiftStruct() [2/2]

RiftStruct::RiftStruct ( int  numrifts_in,
int *  riftsnumsegments_in,
int **  riftssegments_in,
int *  riftsnumpairs_in,
int **  riftspairs_in,
int *  riftsnumpenaltypairs_in,
double **  riftspenaltypairs_in,
int *  riftstips_in 
)

Definition at line 23 of file RiftStruct.cpp.

23  {/*{{{*/
24 
25  int i;
26 
27  /*numrifts*/
28  this->numrifts = numrifts_in;
29  if(!numrifts_in) return;
30 
31  /*riftsnumsegments*/
32  _assert_(riftsnumsegments_in);
33  this->riftsnumsegments=xNew<int>(numrifts_in);
34  xMemCpy<int>(this->riftsnumsegments,riftsnumsegments_in,numrifts_in);
35 
36  /*riftssegments*/
37  _assert_(riftssegments_in);
38  this->riftssegments=xNew<int*>(numrifts_in);
39  for(i=0;i<numrifts_in;i++){
40  this->riftssegments[i]=xNew<int>(riftsnumsegments_in[i]*3);
41  xMemCpy<int>(this->riftssegments[i],riftssegments_in[i],riftsnumsegments_in[i]*3);
42  }
43 
44  /*riftsnumpairs*/
45  _assert_(riftsnumpairs_in);
46  this->riftsnumpairs=xNew<int>(numrifts_in);
47  xMemCpy<int>(this->riftsnumpairs,riftsnumpairs_in,numrifts_in);
48 
49  /*riftspairs*/
50  _assert_(riftspairs_in);
51  this->riftspairs=xNew<int*>(numrifts_in);
52  for(i=0;i<numrifts_in;i++){
53  this->riftspairs[i]=xNew<int>(riftsnumpairs_in[i]*2);
54  xMemCpy<int>(this->riftspairs[i],riftspairs_in[i],riftsnumpairs_in[i]*2);
55  }
56 
57  /*riftsnumpenaltypairs*/
58  _assert_(riftsnumpenaltypairs_in);
59  this->riftsnumpenaltypairs=xNew<int>(numrifts_in);
60  xMemCpy<int>(this->riftsnumpenaltypairs,riftsnumpenaltypairs_in,numrifts_in);
61 
62  /*riftspenaltypairs*/
63  _assert_(riftspenaltypairs_in);
64  this->riftspenaltypairs=xNew<double*>(numrifts_in);
65  for(i=0;i<numrifts_in;i++){
66  this->riftspenaltypairs[i]=xNew<double>(riftsnumpenaltypairs_in[i]*7);
67  xMemCpy<double>(this->riftspenaltypairs[i],riftspenaltypairs_in[i],riftsnumpenaltypairs_in[i]*7);
68  }
69 
70  /*riftstips*/
71  _assert_(riftstips_in);
72  this->riftstips=xNew<int>(2*numrifts_in);
73  xMemCpy<int>(this->riftstips,riftstips_in,2*numrifts_in);
74 
75  /*state*/
76  this->state=xNew<double*>(numrifts_in);
77  for(i=0;i<numrifts_in;i++){
78  this->state[i]=xNew<double>(riftsnumpenaltypairs_in[i]);
79  for(int j=0;j<riftsnumpenaltypairs_in[i];j++) (this->state[i])[j]=FreeEnum;
80  }
81 
82 }/*}}}*/

◆ ~RiftStruct()

RiftStruct::~RiftStruct ( void  )

Definition at line 83 of file RiftStruct.cpp.

83  {/*{{{*/
84 
85  xDelete<int>(this->riftsnumsegments);
86  xDelete<int*>(this->riftssegments);
87  xDelete<int>(this->riftsnumpairs);
88  xDelete<int*>(this->riftspairs);
89  xDelete<int>(this->riftsnumpenaltypairs);
90  xDelete<double*>(this->riftspenaltypairs);
91  xDelete<int>(this->riftstips);
92  xDelete<double*>(this->state);
93 
94 }/*}}}*/

Field Documentation

◆ numrifts

int RiftStruct::numrifts

Definition at line 11 of file RiftStruct.h.

◆ riftspairs

int** RiftStruct::riftspairs

Definition at line 12 of file RiftStruct.h.

◆ riftspenaltypairs

double** RiftStruct::riftspenaltypairs

Definition at line 13 of file RiftStruct.h.

◆ riftsnumpairs

int* RiftStruct::riftsnumpairs

Definition at line 14 of file RiftStruct.h.

◆ riftsnumpenaltypairs

int* RiftStruct::riftsnumpenaltypairs

Definition at line 15 of file RiftStruct.h.

◆ riftsnumsegments

int* RiftStruct::riftsnumsegments

Definition at line 16 of file RiftStruct.h.

◆ riftssegments

int** RiftStruct::riftssegments

Definition at line 17 of file RiftStruct.h.

◆ riftstips

int* RiftStruct::riftstips

Definition at line 18 of file RiftStruct.h.

◆ state

double** RiftStruct::state

Definition at line 19 of file RiftStruct.h.


The documentation for this class was generated from the following files:
RiftStruct::riftsnumpairs
int * riftsnumpairs
Definition: RiftStruct.h:14
_assert_
#define _assert_(ignore)
Definition: exceptions.h:37
RiftStruct::riftsnumpenaltypairs
int * riftsnumpenaltypairs
Definition: RiftStruct.h:15
RiftStruct::riftstips
int * riftstips
Definition: RiftStruct.h:18
RiftStruct::state
double ** state
Definition: RiftStruct.h:19
FreeEnum
@ FreeEnum
Definition: EnumDefinitions.h:1070
RiftStruct::riftsnumsegments
int * riftsnumsegments
Definition: RiftStruct.h:16
RiftStruct::riftssegments
int ** riftssegments
Definition: RiftStruct.h:17
RiftStruct::riftspenaltypairs
double ** riftspenaltypairs
Definition: RiftStruct.h:13
RiftStruct::numrifts
int numrifts
Definition: RiftStruct.h:11
RiftStruct::riftspairs
int ** riftspairs
Definition: RiftStruct.h:12