Main Page Namespace List Class Hierarchy Compound List File List Namespace Members Compound Members Related Pages

# xmltype.h

Go to the documentation of this file.

    00001 /* -*- c++ -*- -*/
    00002 #ifndef AKAXISO2_FRAMEWORK_XMLTYPE_H__
    00003 #define AKAXISO2_FRAMEWORK_XMLTYPE_H__
    00004
    00010 #include <akaxiso2/framework/qname.h>
    00011 #include <typeinfo>
    00012
    00013 namespace aka2 {
    00014
    00019   template<class L>
    00020   struct xmltype_statics {
    00021
    00026     static void xmltype(const std::string &name) {
    00027       L::xmltype_ = aka2::qname(name);
    00028     }
    00029
    00034     static std::string get_xmltype() {
    00035       if (!L::xmltype_.empty())
    00036         return L::xmltype_.qualified();
    00037       return typeid(L).name();
    00038     }
    00039     static qname xmltype_;
    00040   };
    00041
    00042   template<class L>
    00043   qname xmltype_statics<L>::xmltype_;
    00044 }
    00045
    00046 #endif