ParamGetLocalBaseParamNodeClass.php
2.07 KB
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php
define ("PARAMGETLOCALBASEPARAM_NAME", "param");
define ("PARAMGETLOCALBASEPARAM_ID", "id");
define ("PARAMGETLOCALBASEPARAM_MINSAMPLING", "minSampling");
define ("PARAMGETLOCALBASEPARAM_MAXSAMPLING", "maxSampling");
define ("PARAMGETLOCALBASEPARAM_CALIB", "clb");
define ("PARAMGETLOCALBASEPARAM_CALIBNAME", "name");
/**
* @class ParamGetLocalBaseParamNodeClass
* @brief Definition of a Local parameter
* @details
*/
class ParamGetLocalBaseParamNodeClass extends NodeClass
{
public function __construct()
{
parent::__construct(PARAMGETLOCALBASEPARAM_NAME);
}
public function setId($id)
{
$this->setAttribute(PARAMGETLOCALBASEPARAM_ID, $id);
}
public function getId()
{
return $this->getAttribute(PARAMGETLOCALBASEPARAM_ID);
}
public function setMinSampling($minSampling)
{
$this->setAttribute(PARAMGETLOCALBASEPARAM_MINSAMPLING, $minSampling);
}
public function setMaxSampling($maxSampling)
{
$this->setAttribute(PARAMGETLOCALBASEPARAM_MAXSAMPLING, $maxSampling);
}
public function addCalibInfo($calibInfo = "")
{
if ($this->calibInfoExist($calibInfo))
return NULL;
$node = new NodeClass(PARAMGETLOCALBASEPARAM_CALIB);
$node->setAttribute(PARAMGETLOCALBASEPARAM_CALIBNAME,$calibInfo);
$this->addChild($node);
return $node;
}
public function calibInfoExist($calibInfo)
{
$calibNodes = $this->getChildrenByName(PARAMGETLOCALBASEPARAM_CALIB);
foreach ($calibNodes as $calibNode)
if ($calibNode->getAttribute(PARAMGETLOCALBASEPARAM_CALIBNAME) == $calibInfo)
return true;
return false;
}
public function loadFromNode($xmlNode)
{
$this->setId($this->getXmlNodeAttribute($xmlNode, PARAMGETLOCALBASEPARAM_ID));
$this->setMinSampling($this->getXmlNodeAttribute($xmlNode, PARAMGETLOCALBASEPARAM_MINSAMPLING));
$this->setMaxSampling($this->getXmlNodeAttribute($xmlNode, PARAMGETLOCALBASEPARAM_MAXSAMPLING));
foreach ($this->getXmlNodeChildrenByTagName($xmlNode, PARAMGETLOCALBASEPARAM_CALIB) as $calibXmlNode) {
$this->addCalibInfo($this->getXmlNodeAttribute($xmlNode, PARAMGETLOCALBASEPARAM_CALIBNAME));
}
}
}
?>