File: XMLPhysicalPropertiesHandler.cpp

package info (click to toggle)
sofa-framework 1.0~beta4-9
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 88,688 kB
  • ctags: 27,205
  • sloc: cpp: 151,126; ansic: 2,387; xml: 581; sh: 417; makefile: 67
file content (77 lines) | stat: -rw-r--r-- 2,963 bytes parent folder | download | duplicates (5)
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
/***************************************************************************
     XMLPhysicalPropertiesHandler.cpp  -  Specific properties XML handler
                             -------------------
    auto-generated       : Tuesday 6 July 2004 at 17:5:15
    copyright            : (C) 2001-2004 TIMC (E. Promayon, M. Chabanas)
    email                : Emmanuel.Promayon@imag.fr
    Date                 : $Date: 2004/07/06 16:00:23 $
    Version              : $Revision: 1.5 $
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#include "XMLPhysicalModelHandler.h"
#include "Atom.h"
#include "AtomProperties.h"
#include "Cell.h"
#include "CellProperties.h"
#include "StructuralComponent.h"
#include "StructuralComponentProperties.h"

// Read from XML. These methods are automatcially called by the PhysicalModel XML handler
// Four methods can be used to get xml attribute value:
//        std::string getStringValue(const char *);
//        int getIntValue(const char *);
//        float getFloatValue(const char *);
//        double getDoubleValue(const char *);

// atoms
void XMLPhysicalModelHandler::processAtomProperties(Atom *ptr) {
    int propValue1;
    propValue1 = getIntValue("myCustomProperty1");
    if (noProblem())
        ptr->getProperties()->setMyCustomProperty1(propValue1);

    std::string propValue2;
    propValue2 = getStringValue("myCustomProperty2");
    if (noProblem())
        ptr->getProperties()->setMyCustomProperty2(propValue2);

}

// cell
void XMLPhysicalModelHandler::processCellProperties(Cell *ptr) {
    float propValue1;
    propValue1 = getFloatValue("myCustomProperty1");
    if (noProblem())
        ptr->getProperties()->setMyCustomProperty1(propValue1);

    int propValue2;
    propValue2 = getIntValue("myCustomProperty2");
    if (noProblem())
        ptr->getProperties()->setMyCustomProperty2(propValue2);


}

// structural component
void XMLPhysicalModelHandler::processStructuralComponentProperties(StructuralComponent *ptr) {
    int propValue1;
    propValue1 = getIntValue("myCustomProperty1");
    if (noProblem())
        ptr->getProperties()->setMyCustomProperty1(propValue1);

    std::string propValue2;
    propValue2 = getStringValue("myCustomProperty2");
    if (noProblem())
        ptr->getProperties()->setMyCustomProperty2(propValue2);

}