Use hxx extensions instead of hpp
[scilab.git] / scilab / modules / xml / sci_gateway / cpp / sci_print.cpp
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2011 - Scilab Enterprises - Calixte DENIZET
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10  *
11  */
12
13 #include "XMLObject.hxx"
14 #include "XMLDocument.hxx"
15 #include "XMLElement.hxx"
16 #include "XMLNs.hxx"
17 #include "XMLAttr.hxx"
18 #include "XMLNodeList.hxx"
19
20 extern "C"
21 {
22 #include "gw_xml.h"
23 #include "Scierror.h"
24 #include "api_scilab.h"
25 #include "sciprint.h"
26 #include "xml_mlist.h"
27 #include "localization.h"
28 }
29
30 using namespace org_modules_xml;
31
32 /*--------------------------------------------------------------------------*/
33 int sci_print(char *fname, void *pvApiCtx)
34 {
35     XMLObject *obj;
36     int id;
37     SciErr err;
38     int *mlistaddr = 0;
39
40     CheckRhs(1, 1);
41
42     err = getVarAddressFromPosition(pvApiCtx, 1, &mlistaddr);
43     if (err.iErr)
44     {
45         printError(&err, 0);
46         Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 1);
47         return 0;
48     }
49
50     id = getXMLObjectId(mlistaddr, pvApiCtx);
51     obj = XMLObject::getFromId < XMLObject > (id);
52     if (!obj)
53     {
54         Scierror(999, gettext("%s: XML object does not exist.\n"), fname);
55         return 0;
56     }
57
58     const std::string str = obj->toString();
59
60     sciprint("%s\n", str.c_str());
61
62     return 0;
63 }
64
65 /*--------------------------------------------------------------------------*/
66 int sci_percent_XMLDoc_p(char *fname, unsigned long fname_len)
67 {
68     return sci_print(fname, pvApiCtx);
69 }
70
71 /*--------------------------------------------------------------------------*/
72 int sci_percent_XMLElem_p(char *fname, unsigned long fname_len)
73 {
74     return sci_print(fname, pvApiCtx);
75 }
76
77 /*--------------------------------------------------------------------------*/
78 int sci_percent_XMLNs_p(char *fname, unsigned long fname_len)
79 {
80     return sci_print(fname, pvApiCtx);
81 }
82
83 /*--------------------------------------------------------------------------*/
84 int sci_percent_XMLList_p(char *fname, unsigned long fname_len)
85 {
86     return sci_print(fname, pvApiCtx);
87 }
88
89 /*--------------------------------------------------------------------------*/
90 int sci_percent_XMLAttr_p(char *fname, unsigned long fname_len)
91 {
92     return sci_print(fname, pvApiCtx);
93 }
94
95 /*--------------------------------------------------------------------------*/
96 int sci_percent_XMLSet_p(char *fname, unsigned long fname_len)
97 {
98     return sci_print(fname, pvApiCtx);
99 }
100
101 /*--------------------------------------------------------------------------*/
102 int sci_percent_XMLValid_p(char *fname, unsigned long fname_len)
103 {
104     return sci_print(fname, pvApiCtx);
105 }
106
107 /*--------------------------------------------------------------------------*/