39 #include <InternalErr.h> 41 #include "XDStructure.h" 42 #include "XDSequence.h" 43 #include "get_xml_data.h" 45 using namespace xml_data;
49 XDStructure::ptr_duplicate()
54 XDStructure::XDStructure(
const string &n) : Structure(n)
58 XDStructure::XDStructure( Structure *bt )
59 : Structure( bt->name() ),
XDOutput( bt )
64 Vars_iter p = bt->var_begin();
65 while (p != bt->var_end()) {
66 BaseType *new_bt = basetype_to_xd(*p);
74 BaseType::set_send_p(bt->send_p());
77 XDStructure::~XDStructure()
82 XDStructure::start_xml_declaration(XMLWriter *writer,
const char *element)
84 XDOutput::start_xml_declaration(writer, element);
86 for (Vars_iter p = var_begin(); p != var_end(); ++p) {
88 dynamic_cast<XDOutput&>(**p).start_xml_declaration(writer, element);
89 dynamic_cast<XDOutput&>(**p).end_xml_declaration(writer);
95 XDStructure::print_xml_data(XMLWriter *writer,
bool show_type)
101 XDOutput::start_xml_declaration(writer);
103 for (Vars_iter p = var_begin(); p != var_end(); ++p) {
104 if ((*p)->send_p()) {
105 dynamic_cast<XDOutput&> (*(*p)).print_xml_data(writer, show_type);
111 end_xml_declaration(writer);