25 #ifndef _dmrpp_type_factory_h
26 #define _dmrpp_type_factory_h
30 #include <D4BaseTypeFactory.h>
46 virtual libdap::BaseType *NewVariable(
libdap::Type t,
const std::string &name)
const;
48 virtual libdap::Byte *NewByte(
const std::string &n =
"")
const;
51 virtual libdap::Int8 *NewInt8(
const std::string &n =
"")
const;
52 virtual libdap::Byte *NewUInt8(
const std::string &n =
"")
const;
53 virtual libdap::Byte *NewChar(
const std::string &n =
"")
const;
55 virtual libdap::Int16 *NewInt16(
const std::string &n =
"")
const;
56 virtual libdap::UInt16 *NewUInt16(
const std::string &n =
"")
const;
57 virtual libdap::Int32 *NewInt32(
const std::string &n =
"")
const;
58 virtual libdap::UInt32 *NewUInt32(
const std::string &n =
"")
const;
61 virtual libdap::Int64 *NewInt64(
const std::string &n =
"")
const;
62 virtual libdap::UInt64 *NewUInt64(
const std::string &n =
"")
const;
64 virtual libdap::Float32 *NewFloat32(
const std::string &n =
"")
const;
65 virtual libdap::Float64 *NewFloat64(
const std::string &n =
"")
const;
67 virtual libdap::D4Enum *NewEnum(
const std::string &n =
"",
libdap::Type type = libdap::dods_null_c)
const;
69 virtual libdap::Str *NewStr(
const std::string &n =
"")
const;
70 virtual libdap::Url *NewUrl(
const std::string &n =
"")
const;
71 virtual libdap::Url *
NewURL(
const std::string &n =
"")
const;
73 virtual libdap::D4Opaque *NewOpaque(
const std::string &n =
"")
const;
75 virtual libdap::Array *NewArray(
const std::string &n =
"", libdap::BaseType *v = 0)
const;
77 virtual libdap::Structure *NewStructure(
const std::string &n =
"")
const;
78 virtual libdap::D4Sequence *NewD4Sequence(
const std::string &n =
"")
const;
80 virtual libdap::D4Group *NewGroup(
const std::string &n =
"")
const;
85 #endif // _dmrpp_type_factory_h