Ice Sheet System Model
4.18
Code documentation
src
c
classes
Segment.h
Go to the documentation of this file.
1
5
#ifndef _SEGMENT_H_
6
#define _SEGMENT_H_
7
8
/*Headers:*/
9
/*{{{*/
10
#include "../datastructures/datastructures.h"
11
#include "../shared/Numerics/constants.h"
12
/*}}}*/
13
14
template
<
class
double
type>
15
class
Segment
:
public
Object
{
16
17
public
:
18
int
eid
;
19
doubletype
x1
;
20
doubletype
y1
;
21
doubletype
x2
;
22
doubletype
y2
;
23
24
/*Segment constructors, destructors :*/
25
Segment
(){
/*{{{*/
26
this->eid =
UNDEF
;
27
this->x1 =
UNDEF
;
28
this->y1 =
UNDEF
;
29
this->x2 =
UNDEF
;
30
this->y2 =
UNDEF
;
31
}
32
/*}}}*/
33
Segment
(
int
segment_eid, doubletype segment_x1,doubletype segment_y1,doubletype segment_x2, doubletype segment_y2){
/*{{{*/
34
35
this->eid = segment_eid;
36
this->x1 = segment_x1;
37
this->y1 = segment_y1;
38
this->x2 = segment_x2;
39
this->y2 = segment_y2;
40
41
}
42
/*}}}*/
43
~Segment
(){
/*{{{*/
44
}
45
/*}}}*/
46
47
/*Object virtual functions definitions:*/
48
Object
*
copy
() {
/*{{{*/
49
return
new
Segment
(this->eid,this->x1,this->y1,this->x2,this->y2);
50
}
51
/*}}}*/
52
void
DeepEcho
(
void
){
/*{{{*/
53
this->
Echo
();
54
}
55
/*}}}*/
56
void
Echo
(
void
){
/*{{{*/
57
58
_printf_
(
"Segment:\n"
);
59
_printf_
(
" eid: "
<< eid <<
"\n"
);
60
_printf_
(
" node 1: "
<< this->x1 <<
"|"
<< this->y1 <<
"\n"
);
61
_printf_
(
" node 2: "
<< this->x2 <<
"|"
<< this->y2 <<
"\n"
);
62
63
}
64
/*}}}*/
65
int
Id
(
void
){
return
eid
; }
/*{{{*/
66
/*}}}*/
67
void
Marshall
(
char
** pmarshalled_data,
int
* pmarshalled_data_size,
int
marshall_direction){
/*{{{*/
68
_error_
(
"not implemented yet!"
);
69
}
70
/*}}}*/
71
int
ObjectEnum
(
void
){
/*{{{*/
72
73
return
SegmentEnum
;
74
75
}
76
/*}}}*/
77
78
};
79
80
#endif
/* _SEGMENT_H_ */
Segment::copy
Object * copy()
Definition:
Segment.h:48
_printf_
#define _printf_(StreamArgs)
Definition:
Print.h:22
Segment::x1
doubletype x1
Definition:
Segment.h:19
Segment::Id
int Id(void)
Definition:
Segment.h:65
Segment
Definition:
Segment.h:15
Segment::Segment
Segment(int segment_eid, doubletype segment_x1, doubletype segment_y1, doubletype segment_x2, doubletype segment_y2)
Definition:
Segment.h:33
Object
Definition:
Object.h:13
Segment::Marshall
void Marshall(char **pmarshalled_data, int *pmarshalled_data_size, int marshall_direction)
Definition:
Segment.h:67
Segment::~Segment
~Segment()
Definition:
Segment.h:43
UNDEF
#define UNDEF
Definition:
constants.h:8
Segment::eid
int eid
Definition:
Segment.h:18
Segment::DeepEcho
void DeepEcho(void)
Definition:
Segment.h:52
Segment::y1
doubletype y1
Definition:
Segment.h:20
Segment::y2
doubletype y2
Definition:
Segment.h:22
Segment::Segment
Segment()
Definition:
Segment.h:25
_error_
#define _error_(StreamArgs)
Definition:
exceptions.h:49
SegmentEnum
@ SegmentEnum
Definition:
EnumDefinitions.h:1270
Segment::x2
doubletype x2
Definition:
Segment.h:21
Segment::Echo
void Echo(void)
Definition:
Segment.h:56
Segment::ObjectEnum
int ObjectEnum(void)
Definition:
Segment.h:71
Generated on Thu Jul 2 2020 08:09:18 for Ice Sheet System Model by
1.8.19