7 DataType(DataType const&) { assert(false); }
9 DataType& operator= (DataType const&) {
15 DataType(const std::string& type_name) : mTypeName(type_name) {}
17 virtual ~DataType () {}
19 // Return the name for this XML-RPC type.
21 typeName() const { return mTypeName; }
23 // Given a parameter position, calculate a unique base name for all
24 // parameter-related variables.
26 defaultParameterBaseName(int position) const;
28 // Virtual functions for processing parameters.
30 parameterFragment(std::string const& base_name) const = 0;
33 inputConversionFragment(std::string const& base_name) const = 0;
35 // Virtual functions for processing return values.
37 returnTypeFragment () const = 0;
40 outputConversionFragment(std::string const& var_name) const = 0;
43 const DataType& findDataType(const std::string& name);