RequestOutputPlotFillsNodeClass.php
1.42 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
<?php
require_once "RequestOutputPlotFillSerieConstantNodeClass.php";
require_once "RequestOutputPlotFillSerieSerieNodeClass.php";
define ("REQUESTOUTPUTPLOTFILLS_NAME", "fills");
abstract class RequestOutputPlotFillTypeEnum
{
const SERIESERIE = "serie-serie";
const SERIECONSTANT = "serie-constant";
}
/**
* @class RequestOutputPlotFillsNodeClass
* @brief Definition of fills for a plot
* @details
*/
class RequestOutputPlotFillsNodeClass extends NodeClass
{
public function __construct()
{
parent::__construct(REQUESTOUTPUTPLOTFILLS_NAME);
}
public function addFill($type)
{
switch ($type)
{
case RequestOutputPlotFillTypeEnum::SERIECONSTANT :
$node = new RequestOutputPlotFillSerieConstantNodeClass();
break;
case RequestOutputPlotFillTypeEnum::SERIESERIE :
default :
$node = new RequestOutputPlotFillSerieSerieNodeClass();
break;
}
$this->addChild($node);
return $node;
}
public function loadFromNode($xmlNode)
{
foreach ($this->getXmlNodeChildrenByTagName($xmlNode, REQUESTOUTPUTPLOTFILLSERIECONSTANT_NAME) as $fillserieconstantXmlNode) {
$this->addFill(RequestOutputPlotFillTypeEnum::SERIECONSTANT)->loadFromNode($fillserieconstantXmlNode);
}
foreach ($this->getXmlNodeChildrenByTagName($xmlNode, REQUESTOUTPUTPLOTFILLSERIESERIE_NAME) as $fillserieserieXmlNode) {
$this->addFill(RequestOutputPlotFillTypeEnum::SERIESERIE)->loadFromNode($fillserieserieXmlNode);
}
}
}
?>