/usr/include/camitk-3.3/libraries/lml/XMLLoads.h is in libcamitk3-dev 3.3.2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 | /*****************************************************************************
* $CAMITK_LICENCE_BEGIN$
*
* CamiTK - Computer Assisted Medical Intervention ToolKit
* (c) 2001-2014 UJF-Grenoble 1, CNRS, TIMC-IMAG UMR 5525 (GMCAO)
*
* Visit http://camitk.imag.fr for more information
*
* This file is part of CamiTK.
*
* CamiTK is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* CamiTK is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
*
* $CAMITK_LICENCE_END$
****************************************************************************/
#ifndef XMLLOADS_H
#define XMLLOADS_H
#include "Loads.h"
#include <libxml/parser.h>
#include <libxml/tree.h>
/* old doc
Usage example:
<pre>
// reading
main() {
XMLLoads data;
data.xmlRead("toto.lml");
Loads *l = data.getLoad();
...
cout << l;
}
// writing
main() {
Loads *l= new Loads();
Translation *t = new Translation();
t->setUnit(..)
...
cout << l;
}
</pre>
*/
/**
* @ingroup group_cepmodeling_libraries_lml
*
* @deprecated
* Please use now Loads(std::string) constructor...
*
* @brief
* Allows one to read loads from an XML file (LML)/
*
*
*
**/
class XMLLoads {
public:
/** create a list of loads from an LML file.
* @param fileName the name of the lml file (xml)
* @param allLoads the pointer to the Loads instance (to store all loads), if null a new one is instanciated
*/
XMLLoads(std::string fileName, Loads* allLoads);
/// create an empty list of loads
XMLLoads();
/// (deprecated) create a list of loads from an LML file (instanciate a new Loads class object)
XMLLoads(std::string fileName);
/// destructor (delete all loads)
~XMLLoads();
/// get the list of loads
Loads * getLoads();
/// add a new load to the list (creates one if no loads yet)
void addLoad(Load *);
/** Read the loads from an LML file.
* Uses libxml2.
*/
void xmlRead(std::string);
protected:
/** Read a load xml element, from lml file
* Uses xmlNodePtr from libxml2
*/
bool parseElement(xmlNodePtr elem);
/** Read a load AppliedTo property, from lml file
* Uses xmlNodePtr from libxml2
* AppliedTo contains the list of atoms on which the load is applied
*/
void readLoadAppliedTo(xmlNodePtr elem, Load *currentLoad);
/** Read a load Direction property, from lml file
* Uses xmlNodePtr from libxml2
* Direction contains a 3D vector
*/
void readLoadDirection(xmlNodePtr elem, Load *currentLoad);
/** Read a load valueEvent property, from lml file
* Uses xmlNodePtr from libxml2
* valueEvent contains a pair of date/value
*/
void readLoadValueEvent(xmlNodePtr elem, Load *currentLoad);
/** Read a load Unit property, from lml file
* Uses xmlNodePtr from libxml2
* Unit contains the unit value of the load
*/
void readLoadUnit(xmlNodePtr elem, Load *currentLoad);
private:
Loads *l;
const char*xmlFile;
};
#endif
|