PSUADEDaceAlgorithmOptions PSUADEDaceAlgorithmOptions_Impl::fromVariant(const QVariant& variant,
                                                                         const VersionString& version)
 {
   QVariantMap map = variant.toMap();
   AttributeVector attributes = deserializeUnorderedVector(
         map["attributes"].toList(),
         std::function<Attribute (const QVariant&)>(std::bind(openstudio::detail::toAttribute,std::placeholders::_1,version)));
   return PSUADEDaceAlgorithmOptions(attributes);
 }
 SequentialSearchOptions SequentialSearchOptions_Impl::fromVariant(const QVariant& variant,
                                                               const VersionString& version)
 {
   QVariantMap map = variant.toMap();
   AttributeVector attributes = deserializeUnorderedVector(
         map["attributes"].toList(),
         boost::function<Attribute (const QVariant&)>(boost::bind(openstudio::detail::toAttribute,_1,version)));
   return SequentialSearchOptions(attributes);
 }
 ParameterStudyAlgorithmOptions ParameterStudyAlgorithmOptions_Impl::fromVariant(const QVariant& variant,
                                                                                 const VersionString& version)
 {
   QVariantMap map = variant.toMap();
   AttributeVector attributes = deserializeUnorderedVector(
         map["attributes"].toList(),
         boost::function<Attribute (const QVariant&)>(boost::bind(openstudio::detail::toAttribute,_1,version)));
   return ParameterStudyAlgorithmOptions(map["parameter_study_algorithm_type"].toString().toStdString(),
                                         attributes);
 }
 DesignOfExperimentsOptions DesignOfExperimentsOptions_Impl::fromVariant(const QVariant& variant,
                                                                         const VersionString& version)
 {
   QVariantMap map = variant.toMap();
   AttributeVector attributes = deserializeUnorderedVector(
         map["attributes"].toList(),
         std::function<Attribute (const QVariant&)>(std::bind(openstudio::detail::toAttribute,std::placeholders::_1,version)));
   return DesignOfExperimentsOptions(DesignOfExperimentsType(map["design_type"].toString().toStdString()),
                                     attributes);
 }