void PluginManagerAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("PluginManagerAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("name")) != 0) SetName(node->AsStringVector()); if((node = searchNode->GetNode("type")) != 0) SetType(node->AsStringVector()); if((node = searchNode->GetNode("version")) != 0) SetVersion(node->AsStringVector()); if((node = searchNode->GetNode("id")) != 0) SetId(node->AsStringVector()); if((node = searchNode->GetNode("category")) != 0) SetCategory(node->AsStringVector()); if((node = searchNode->GetNode("enabled")) != 0) SetEnabled(node->AsIntVector()); // Ensure that the category vector will be at least as long as the id vector. // This is import for supporting legacy config files. while(category.size() < id.size()) category.push_back("?"); }
void DBOptionsAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("DBOptionsAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("types")) != 0) SetTypes(node->AsIntVector()); if((node = searchNode->GetNode("names")) != 0) SetNames(node->AsStringVector()); if((node = searchNode->GetNode("optBools")) != 0) SetOptBools(node->AsIntVector()); if((node = searchNode->GetNode("optFloats")) != 0) SetOptFloats(node->AsDoubleVector()); if((node = searchNode->GetNode("optDoubles")) != 0) SetOptDoubles(node->AsDoubleVector()); if((node = searchNode->GetNode("optInts")) != 0) SetOptInts(node->AsIntVector()); if((node = searchNode->GetNode("optStrings")) != 0) SetOptStrings(node->AsStringVector()); if((node = searchNode->GetNode("optEnums")) != 0) SetOptEnums(node->AsIntVector()); if((node = searchNode->GetNode("enumStrings")) != 0) SetEnumStrings(node->AsStringVector()); if((node = searchNode->GetNode("enumStringsSizes")) != 0) SetEnumStringsSizes(node->AsIntVector()); if((node = searchNode->GetNode("obsoleteNames")) != 0) SetObsoleteNames(node->AsStringVector()); }
void NameschemeAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("NameschemeAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("namescheme")) != 0) SetNamescheme(node->AsString()); if((node = searchNode->GetNode("externalArrayNames")) != 0) SetExternalArrayNames(node->AsStringVector()); if((node = searchNode->GetNode("externalArrayOffsets")) != 0) SetExternalArrayOffsets(node->AsIntVector()); if((node = searchNode->GetNode("externalArrayData")) != 0) SetExternalArrayData(node->AsIntVector()); if((node = searchNode->GetNode("allExplicitNames")) != 0) SetAllExplicitNames(node->AsStringVector()); if((node = searchNode->GetNode("explicitIds")) != 0) SetExplicitIds(node->AsIntVector()); if((node = searchNode->GetNode("explicitNames")) != 0) SetExplicitNames(node->AsStringVector()); }
void ParallelCoordinatesAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("ParallelCoordinatesAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("scalarAxisNames")) != 0) SetScalarAxisNames(node->AsStringVector()); if((node = searchNode->GetNode("visualAxisNames")) != 0) SetVisualAxisNames(node->AsStringVector()); if((node = searchNode->GetNode("extentMinima")) != 0) SetExtentMinima(node->AsDoubleVector()); if((node = searchNode->GetNode("extentMaxima")) != 0) SetExtentMaxima(node->AsDoubleVector()); if((node = searchNode->GetNode("drawLines")) != 0) SetDrawLines(node->AsBool()); if((node = searchNode->GetNode("linesColor")) != 0) linesColor.SetFromNode(node); if((node = searchNode->GetNode("drawContext")) != 0) SetDrawContext(node->AsBool()); if((node = searchNode->GetNode("contextGamma")) != 0) SetContextGamma(node->AsFloat()); if((node = searchNode->GetNode("contextNumPartitions")) != 0) SetContextNumPartitions(node->AsInt()); if((node = searchNode->GetNode("contextColor")) != 0) contextColor.SetFromNode(node); if((node = searchNode->GetNode("drawLinesOnlyIfExtentsOn")) != 0) SetDrawLinesOnlyIfExtentsOn(node->AsBool()); if((node = searchNode->GetNode("unifyAxisExtents")) != 0) SetUnifyAxisExtents(node->AsBool()); if((node = searchNode->GetNode("linesNumPartitions")) != 0) SetLinesNumPartitions(node->AsInt()); if((node = searchNode->GetNode("focusGamma")) != 0) SetFocusGamma(node->AsFloat()); if((node = searchNode->GetNode("drawFocusAs")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetDrawFocusAs(FocusRendering(ival)); } else if(node->GetNodeType() == STRING_NODE) { FocusRendering value; if(FocusRendering_FromString(node->AsString(), value)) SetDrawFocusAs(value); } } }
void ExportDBAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("ExportDBAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("allTimes")) != 0) SetAllTimes(node->AsBool()); if((node = searchNode->GetNode("db_type")) != 0) SetDb_type(node->AsString()); if((node = searchNode->GetNode("db_type_fullname")) != 0) SetDb_type_fullname(node->AsString()); if((node = searchNode->GetNode("filename")) != 0) SetFilename(node->AsString()); if((node = searchNode->GetNode("dirname")) != 0) SetDirname(node->AsString()); if((node = searchNode->GetNode("variables")) != 0) SetVariables(node->AsStringVector()); if((node = searchNode->GetNode("opts")) != 0) opts.SetFromNode(node); }
void ThresholdAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("ThresholdAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("outputMeshType")) != 0) SetOutputMeshType(node->AsInt()); if((node = searchNode->GetNode("listedVarNames")) != 0) SetListedVarNames(node->AsStringVector()); if((node = searchNode->GetNode("zonePortions")) != 0) SetZonePortions(node->AsIntVector()); if((node = searchNode->GetNode("lowerBounds")) != 0) SetLowerBounds(node->AsDoubleVector()); if((node = searchNode->GetNode("upperBounds")) != 0) SetUpperBounds(node->AsDoubleVector()); if((node = searchNode->GetNode("defaultVarName")) != 0) SetDefaultVarName(node->AsString()); if((node = searchNode->GetNode("defaultVarIsScalar")) != 0) SetDefaultVarIsScalar(node->AsBool()); }
void FileOpenOptions::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("FileOpenOptions"); if(searchNode == 0) return; DataNode *node; DataNode **children; if((node = searchNode->GetNode("typeNames")) != 0) SetTypeNames(node->AsStringVector()); if((node = searchNode->GetNode("typeIDs")) != 0) SetTypeIDs(node->AsStringVector()); // Clear all the DBOptionsAttributess if we got any. bool clearedOpenOptions = false; // Go through all of the children and construct a new // DBOptionsAttributes for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("DBOptionsAttributes")) { if (!clearedOpenOptions) { ClearOpenOptions(); clearedOpenOptions = true; } DBOptionsAttributes temp; temp.SetFromNode(children[i]); AddOpenOptions(temp); } } } if((node = searchNode->GetNode("Enabled")) != 0) SetEnabled(node->AsIntVector()); if((node = searchNode->GetNode("preferredIDs")) != 0) SetPreferredIDs(node->AsStringVector()); }
void EngineList::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("EngineList"); if(searchNode == 0) return; DataNode *node; DataNode **children; if((node = searchNode->GetNode("engineName")) != 0) SetEngineName(node->AsStringVector()); if((node = searchNode->GetNode("simulationName")) != 0) SetSimulationName(node->AsStringVector()); // Clear all the EnginePropertiess if we got any. bool clearedProperties = false; // Go through all of the children and construct a new // EngineProperties for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("EngineProperties")) { if (!clearedProperties) { ClearProperties(); clearedProperties = true; } EngineProperties temp; temp.SetFromNode(children[i]); AddProperties(temp); } } } }
void DatabaseCorrelation::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("DatabaseCorrelation"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("name")) != 0) SetName(node->AsString()); if((node = searchNode->GetNode("numStates")) != 0) SetNumStates(node->AsInt()); if((node = searchNode->GetNode("method")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 5) SetMethod(CorrelationMethod(ival)); } else if(node->GetNodeType() == STRING_NODE) { CorrelationMethod value; if(CorrelationMethod_FromString(node->AsString(), value)) SetMethod(value); } } if((node = searchNode->GetNode("databaseNames")) != 0) SetDatabaseNames(node->AsStringVector()); if((node = searchNode->GetNode("databaseNStates")) != 0) SetDatabaseNStates(node->AsIntVector()); if((node = searchNode->GetNode("databaseTimes")) != 0) SetDatabaseTimes(node->AsDoubleVector()); if((node = searchNode->GetNode("databaseCycles")) != 0) SetDatabaseCycles(node->AsIntVector()); if((node = searchNode->GetNode("indices")) != 0) SetIndices(node->AsIntVector()); if((node = searchNode->GetNode("condensedTimes")) != 0) SetCondensedTimes(node->AsDoubleVector()); if((node = searchNode->GetNode("condensedCycles")) != 0) SetCondensedCycles(node->AsIntVector()); }
void AxisRestrictionAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("AxisRestrictionAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("names")) != 0) SetNames(node->AsStringVector()); if((node = searchNode->GetNode("minima")) != 0) SetMinima(node->AsDoubleVector()); if((node = searchNode->GetNode("maxima")) != 0) SetMaxima(node->AsDoubleVector()); }
void ViewerClientInformation::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("ViewerClientInformation"); if(searchNode == 0) return; DataNode *node; DataNode **children; // Clear all the ViewerClientInformationElements if we got any. bool clearedVars = false; // Go through all of the children and construct a new // ViewerClientInformationElement for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("ViewerClientInformationElement")) { if (!clearedVars) { ClearVars(); clearedVars = true; } ViewerClientInformationElement temp; temp.SetFromNode(children[i]); AddVars(temp); } } } if((node = searchNode->GetNode("supportedFormats")) != 0) SetSupportedFormats(node->AsStringVector()); }
void QueryAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("QueryAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("resultsMessage")) != 0) SetResultsMessage(node->AsString()); if((node = searchNode->GetNode("resultsValue")) != 0) SetResultsValue(node->AsDoubleVector()); if((node = searchNode->GetNode("timeStep")) != 0) SetTimeStep(node->AsInt()); if((node = searchNode->GetNode("varTypes")) != 0) SetVarTypes(node->AsIntVector()); if((node = searchNode->GetNode("pipeIndex")) != 0) SetPipeIndex(node->AsInt()); if((node = searchNode->GetNode("xUnits")) != 0) SetXUnits(node->AsString()); if((node = searchNode->GetNode("yUnits")) != 0) SetYUnits(node->AsString()); if((node = searchNode->GetNode("floatFormat")) != 0) SetFloatFormat(node->AsString()); if((node = searchNode->GetNode("xmlResult")) != 0) SetXmlResult(node->AsString()); if((node = searchNode->GetNode("suppressOutput")) != 0) SetSuppressOutput(node->AsBool()); if((node = searchNode->GetNode("queryInputParams")) != 0) SetQueryInputParams(node->AsMapNode()); if((node = searchNode->GetNode("defaultName")) != 0) SetDefaultName(node->AsString()); if((node = searchNode->GetNode("defaultVars")) != 0) SetDefaultVars(node->AsStringVector()); }
void AnnotationObject::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("AnnotationObject"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("objectName")) != 0) SetObjectName(node->AsString()); if((node = searchNode->GetNode("objectType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 8) SetObjectType(AnnotationType(ival)); } else if(node->GetNodeType() == STRING_NODE) { AnnotationType value; if(AnnotationType_FromString(node->AsString(), value)) SetObjectType(value); } } if((node = searchNode->GetNode("visible")) != 0) SetVisible(node->AsBool()); if((node = searchNode->GetNode("active")) != 0) SetActive(node->AsBool()); if((node = searchNode->GetNode("position")) != 0) { if(node->GetNodeType() == FLOAT_ARRAY_NODE) { const float *fn = node->AsFloatArray(); double dp[3] = {fn[0], fn[1], fn[2]}; SetPosition(dp); } else SetPosition(node->AsDoubleArray()); } if((node = searchNode->GetNode("position2")) != 0) { if(node->GetNodeType() == FLOAT_ARRAY_NODE) { const float *fn = node->AsFloatArray(); double dp[3] = {fn[0], fn[1], fn[2]}; SetPosition2(dp); } else SetPosition2(node->AsDoubleArray()); } if((node = searchNode->GetNode("textColor")) != 0) textColor.SetFromNode(node); if((node = searchNode->GetNode("useForegroundForTextColor")) != 0) SetUseForegroundForTextColor(node->AsBool()); if((node = searchNode->GetNode("color1")) != 0) color1.SetFromNode(node); if((node = searchNode->GetNode("color2")) != 0) color2.SetFromNode(node); if((node = searchNode->GetNode("text")) != 0) SetText(node->AsStringVector()); if((node = searchNode->GetNode("fontFamily")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetFontFamily(FontFamily(ival)); } else if(node->GetNodeType() == STRING_NODE) { FontFamily value; if(FontFamily_FromString(node->AsString(), value)) SetFontFamily(value); } } if((node = searchNode->GetNode("fontBold")) != 0) SetFontBold(node->AsBool()); if((node = searchNode->GetNode("fontItalic")) != 0) SetFontItalic(node->AsBool()); if((node = searchNode->GetNode("fontShadow")) != 0) SetFontShadow(node->AsBool()); if((node = searchNode->GetNode("floatAttribute1")) != 0) SetDoubleAttribute1(node->AsDouble()); if((node = searchNode->GetNode("doubleAttribute1")) != 0) SetDoubleAttribute1(node->AsDouble()); if((node = searchNode->GetNode("intAttribute1")) != 0) SetIntAttribute1(node->AsInt()); if((node = searchNode->GetNode("intAttribute2")) != 0) SetIntAttribute2(node->AsInt()); if((node = searchNode->GetNode("intAttribute3")) != 0) SetIntAttribute3(node->AsInt()); if((node = searchNode->GetNode("doubleVector1")) != 0) SetDoubleVector1(node->AsDoubleVector()); if((node = searchNode->GetNode("stringVector1")) != 0) SetStringVector1(node->AsStringVector()); if((node = searchNode->GetNode("stringVector2")) != 0) SetStringVector2(node->AsStringVector()); }
void SubsetAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("SubsetAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("colorType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetColorType(ColoringMethod(ival)); } else if(node->GetNodeType() == STRING_NODE) { ColoringMethod value; if(ColoringMethod_FromString(node->AsString(), value)) SetColorType(value); } } if((node = searchNode->GetNode("colorTableName")) != 0) SetColorTableName(node->AsString()); if((node = searchNode->GetNode("invertColorTable")) != 0) SetInvertColorTable(node->AsBool()); if((node = searchNode->GetNode("filledFlag")) != 0) SetFilledFlag(node->AsBool()); if((node = searchNode->GetNode("legendFlag")) != 0) SetLegendFlag(node->AsBool()); if((node = searchNode->GetNode("lineStyle")) != 0) SetLineStyle(node->AsInt()); if((node = searchNode->GetNode("lineWidth")) != 0) SetLineWidth(node->AsInt()); if((node = searchNode->GetNode("singleColor")) != 0) singleColor.SetFromNode(node); if((node = searchNode->GetNode("multiColor")) != 0) multiColor.SetFromNode(node); if((node = searchNode->GetNode("subsetNames")) != 0) SetSubsetNames(node->AsStringVector()); if((node = searchNode->GetNode("subsetType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 6) SetSubsetType(Subset_Type(ival)); } else if(node->GetNodeType() == STRING_NODE) { Subset_Type value; if(Subset_Type_FromString(node->AsString(), value)) SetSubsetType(value); } } if((node = searchNode->GetNode("opacity")) != 0) SetOpacity(node->AsDouble()); if((node = searchNode->GetNode("wireframe")) != 0) SetWireframe(node->AsBool()); if((node = searchNode->GetNode("drawInternal")) != 0) SetDrawInternal(node->AsBool()); if((node = searchNode->GetNode("smoothingLevel")) != 0) SetSmoothingLevel(node->AsInt()); if((node = searchNode->GetNode("pointSize")) != 0) SetPointSize(node->AsDouble()); if((node = searchNode->GetNode("pointType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 8) SetPointType(PointType(ival)); } else if(node->GetNodeType() == STRING_NODE) { PointType value; if(PointType_FromString(node->AsString(), value)) SetPointType(value); } } if((node = searchNode->GetNode("pointSizeVarEnabled")) != 0) SetPointSizeVarEnabled(node->AsBool()); if((node = searchNode->GetNode("pointSizeVar")) != 0) SetPointSizeVar(node->AsString()); if((node = searchNode->GetNode("pointSizePixels")) != 0) SetPointSizePixels(node->AsInt()); }
void QueryAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("QueryAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("name")) != 0) SetName(node->AsString()); if((node = searchNode->GetNode("variables")) != 0) SetVariables(node->AsStringVector()); if((node = searchNode->GetNode("resultsMessage")) != 0) SetResultsMessage(node->AsString()); if((node = searchNode->GetNode("worldPoint")) != 0) SetWorldPoint(node->AsDoubleArray()); if((node = searchNode->GetNode("domain")) != 0) SetDomain(node->AsInt()); if((node = searchNode->GetNode("element")) != 0) SetElement(node->AsInt()); if((node = searchNode->GetNode("resultsValue")) != 0) SetResultsValue(node->AsDoubleVector()); if((node = searchNode->GetNode("elementType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetElementType(ElementType(ival)); } else if(node->GetNodeType() == STRING_NODE) { ElementType value; if(ElementType_FromString(node->AsString(), value)) SetElementType(value); } } if((node = searchNode->GetNode("timeStep")) != 0) SetTimeStep(node->AsInt()); if((node = searchNode->GetNode("varTypes")) != 0) SetVarTypes(node->AsIntVector()); if((node = searchNode->GetNode("dataType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetDataType(DataType(ival)); } else if(node->GetNodeType() == STRING_NODE) { DataType value; if(DataType_FromString(node->AsString(), value)) SetDataType(value); } } if((node = searchNode->GetNode("pipeIndex")) != 0) SetPipeIndex(node->AsInt()); if((node = searchNode->GetNode("useGlobalId")) != 0) SetUseGlobalId(node->AsBool()); if((node = searchNode->GetNode("xUnits")) != 0) SetXUnits(node->AsString()); if((node = searchNode->GetNode("yUnits")) != 0) SetYUnits(node->AsString()); if((node = searchNode->GetNode("darg1")) != 0) SetDarg1(node->AsDoubleVector()); if((node = searchNode->GetNode("darg2")) != 0) SetDarg2(node->AsDoubleVector()); if((node = searchNode->GetNode("floatFormat")) != 0) SetFloatFormat(node->AsString()); if((node = searchNode->GetNode("xmlResult")) != 0) SetXmlResult(node->AsString()); }
void ConstructDataBinningAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("ConstructDataBinningAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("name")) != 0) SetName(node->AsString()); if((node = searchNode->GetNode("varnames")) != 0) SetVarnames(node->AsStringVector()); if((node = searchNode->GetNode("binType")) != 0) SetBinType(node->AsUnsignedCharVector()); if((node = searchNode->GetNode("binBoundaries")) != 0) SetBinBoundaries(node->AsDoubleVector()); if((node = searchNode->GetNode("reductionOperator")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 9) SetReductionOperator(ReductionOperator(ival)); } else if(node->GetNodeType() == STRING_NODE) { ReductionOperator value; if(ReductionOperator_FromString(node->AsString(), value)) SetReductionOperator(value); } } if((node = searchNode->GetNode("varForReductionOperator")) != 0) SetVarForReductionOperator(node->AsString()); if((node = searchNode->GetNode("undefinedValue")) != 0) SetUndefinedValue(node->AsDouble()); if((node = searchNode->GetNode("binningScheme")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetBinningScheme(BinningScheme(ival)); } else if(node->GetNodeType() == STRING_NODE) { BinningScheme value; if(BinningScheme_FromString(node->AsString(), value)) SetBinningScheme(value); } } if((node = searchNode->GetNode("numBins")) != 0) SetNumBins(node->AsIntVector()); if((node = searchNode->GetNode("overTime")) != 0) SetOverTime(node->AsBool()); if((node = searchNode->GetNode("timeStart")) != 0) SetTimeStart(node->AsInt()); if((node = searchNode->GetNode("timeEnd")) != 0) SetTimeEnd(node->AsInt()); if((node = searchNode->GetNode("timeStride")) != 0) SetTimeStride(node->AsInt()); if((node = searchNode->GetNode("outOfBoundsBehavior")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetOutOfBoundsBehavior(OutOfBoundsBehavior(ival)); } else if(node->GetNodeType() == STRING_NODE) { OutOfBoundsBehavior value; if(OutOfBoundsBehavior_FromString(node->AsString(), value)) SetOutOfBoundsBehavior(value); } } }
void SILAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("SILAttributes"); if(searchNode == 0) return; DataNode *node; DataNode **children; if((node = searchNode->GetNode("nSets")) != 0) SetNSets(node->AsInt()); if((node = searchNode->GetNode("setNames")) != 0) SetSetNames(node->AsStringVector()); if((node = searchNode->GetNode("setIds")) != 0) SetSetIds(node->AsIntVector()); if((node = searchNode->GetNode("wholeList")) != 0) SetWholeList(node->AsIntVector()); if((node = searchNode->GetNode("nCollections")) != 0) SetNCollections(node->AsInt()); if((node = searchNode->GetNode("category")) != 0) SetCategory(node->AsStringVector()); if((node = searchNode->GetNode("role")) != 0) SetRole(node->AsIntVector()); if((node = searchNode->GetNode("superset")) != 0) SetSuperset(node->AsIntVector()); // Clear all the NamespaceAttributess if we got any. bool clearedNspaces = false; // Go through all of the children and construct a new // NamespaceAttributes for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("NamespaceAttributes")) { if (!clearedNspaces) { ClearNspaces(); clearedNspaces = true; } NamespaceAttributes temp; temp.SetFromNode(children[i]); AddNspace(temp); } } } // Clear all the SILMatrixAttributess if we got any. bool clearedMatrices = false; // Go through all of the children and construct a new // SILMatrixAttributes for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("SILMatrixAttributes")) { if (!clearedMatrices) { ClearMatrices(); clearedMatrices = true; } SILMatrixAttributes temp; temp.SetFromNode(children[i]); AddMatrices(temp); } } } // Clear all the SILArrayAttributess if we got any. bool clearedArrays = false; // Go through all of the children and construct a new // SILArrayAttributes for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("SILArrayAttributes")) { if (!clearedArrays) { ClearArrays(); clearedArrays = true; } SILArrayAttributes temp; temp.SetFromNode(children[i]); AddArrays(temp); } } } if((node = searchNode->GetNode("order")) != 0) SetOrder(node->AsIntVector()); }
void FilledBoundaryAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("FilledBoundaryAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("colorType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetColorType(ColoringMethod(ival)); } else if(node->GetNodeType() == STRING_NODE) { ColoringMethod value; if(ColoringMethod_FromString(node->AsString(), value)) SetColorType(value); } } if((node = searchNode->GetNode("colorTableName")) != 0) SetColorTableName(node->AsString()); if((node = searchNode->GetNode("invertColorTable")) != 0) SetInvertColorTable(node->AsBool()); if((node = searchNode->GetNode("filledFlag")) != 0) SetFilledFlag(node->AsBool()); if((node = searchNode->GetNode("legendFlag")) != 0) SetLegendFlag(node->AsBool()); if((node = searchNode->GetNode("lineStyle")) != 0) SetLineStyle(node->AsInt()); if((node = searchNode->GetNode("lineWidth")) != 0) SetLineWidth(node->AsInt()); if((node = searchNode->GetNode("singleColor")) != 0) singleColor.SetFromNode(node); if((node = searchNode->GetNode("multiColor")) != 0) multiColor.SetFromNode(node); if((node = searchNode->GetNode("boundaryNames")) != 0) SetBoundaryNames(node->AsStringVector()); if((node = searchNode->GetNode("boundaryType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 4) SetBoundaryType(Boundary_Type(ival)); } else if(node->GetNodeType() == STRING_NODE) { Boundary_Type value; if(Boundary_Type_FromString(node->AsString(), value)) SetBoundaryType(value); } } if((node = searchNode->GetNode("opacity")) != 0) SetOpacity(node->AsDouble()); if((node = searchNode->GetNode("wireframe")) != 0) SetWireframe(node->AsBool()); if((node = searchNode->GetNode("drawInternal")) != 0) SetDrawInternal(node->AsBool()); if((node = searchNode->GetNode("smoothingLevel")) != 0) SetSmoothingLevel(node->AsInt()); if((node = searchNode->GetNode("cleanZonesOnly")) != 0) SetCleanZonesOnly(node->AsBool()); if((node = searchNode->GetNode("mixedColor")) != 0) mixedColor.SetFromNode(node); if((node = searchNode->GetNode("pointSize")) != 0) SetPointSize(node->AsDouble()); if((node = searchNode->GetNode("pointType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 8) SetPointType(PointType(ival)); } else if(node->GetNodeType() == STRING_NODE) { PointType value; if(PointType_FromString(node->AsString(), value)) SetPointType(value); } } if((node = searchNode->GetNode("pointSizeVarEnabled")) != 0) SetPointSizeVarEnabled(node->AsBool()); if((node = searchNode->GetNode("pointSizeVar")) != 0) SetPointSizeVar(node->AsString()); if((node = searchNode->GetNode("pointSizePixels")) != 0) SetPointSizePixels(node->AsInt()); // We are no longer using MultiColor as the source for the "mixed" // color (in clean zones only), but someone may have saved their // settings with the "mixed" color in the list. Remove it if it's // in there. // // NOTE: This code can be removed in a few months, as soon as // 1.3 is at least a few versions old, since it represents a little // bit of a hack. bool done = false; while (!done) { done = true; size_t index; for (index=0; index<boundaryNames.size(); index++) { if (boundaryNames[index] == "mixed") { done = false; break; } } if (!done) { multiColor.RemoveColors((int)index); for (size_t i=index+1; i<boundaryNames.size(); i++) boundaryNames[i-1] = boundaryNames[i]; boundaryNames.resize(boundaryNames.size() - 1); } } }
void DBPluginInfoAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("DBPluginInfoAttributes"); if(searchNode == 0) return; DataNode *node; DataNode **children; if((node = searchNode->GetNode("types")) != 0) SetTypes(node->AsStringVector()); if((node = searchNode->GetNode("hasWriter")) != 0) SetHasWriter(node->AsIntVector()); // Clear all the DBOptionsAttributess if we got any. bool clearedDbReadOptions = false; // Go through all of the children and construct a new // DBOptionsAttributes for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("DBOptionsAttributes")) { if (!clearedDbReadOptions) { ClearDbReadOptions(); clearedDbReadOptions = true; } DBOptionsAttributes temp; temp.SetFromNode(children[i]); AddDbReadOptions(temp); } } } // Clear all the DBOptionsAttributess if we got any. bool clearedDbWriteOptions = false; // Go through all of the children and construct a new // DBOptionsAttributes for each one of them. children = searchNode->GetChildren(); if(children != 0) { for(int i = 0; i < searchNode->GetNumChildren(); ++i) { if(children[i]->GetKey() == std::string("DBOptionsAttributes")) { if (!clearedDbWriteOptions) { ClearDbWriteOptions(); clearedDbWriteOptions = true; } DBOptionsAttributes temp; temp.SetFromNode(children[i]); AddDbWriteOptions(temp); } } } if((node = searchNode->GetNode("typesFullNames")) != 0) SetTypesFullNames(node->AsStringVector()); if((node = searchNode->GetNode("license")) != 0) SetLicense(node->AsStringVector()); if((node = searchNode->GetNode("host")) != 0) SetHost(node->AsString()); }
void ConstructDDFAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("ConstructDDFAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("ddfName")) != 0) SetDdfName(node->AsString()); if((node = searchNode->GetNode("varnames")) != 0) SetVarnames(node->AsStringVector()); if((node = searchNode->GetNode("ranges")) != 0) SetRanges(node->AsDoubleVector()); if((node = searchNode->GetNode("codomainName")) != 0) SetCodomainName(node->AsString()); if((node = searchNode->GetNode("statisticalOperator")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 10) SetStatisticalOperator(StatisticalOperator(ival)); } else if(node->GetNodeType() == STRING_NODE) { StatisticalOperator value; if(StatisticalOperator_FromString(node->AsString(), value)) SetStatisticalOperator(value); } } if((node = searchNode->GetNode("percentile")) != 0) SetPercentile(node->AsDouble()); if((node = searchNode->GetNode("undefinedValue")) != 0) SetUndefinedValue(node->AsDouble()); if((node = searchNode->GetNode("binningScheme")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetBinningScheme(BinningScheme(ival)); } else if(node->GetNodeType() == STRING_NODE) { BinningScheme value; if(BinningScheme_FromString(node->AsString(), value)) SetBinningScheme(value); } } if((node = searchNode->GetNode("numSamples")) != 0) SetNumSamples(node->AsIntVector()); if((node = searchNode->GetNode("overTime")) != 0) SetOverTime(node->AsBool()); if((node = searchNode->GetNode("timeStart")) != 0) SetTimeStart(node->AsInt()); if((node = searchNode->GetNode("timeEnd")) != 0) SetTimeEnd(node->AsInt()); if((node = searchNode->GetNode("timeStride")) != 0) SetTimeStride(node->AsInt()); }
void WellBoreAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("WellBoreAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("defaultPalette")) != 0) defaultPalette.SetFromNode(node); if((node = searchNode->GetNode("changedColors")) != 0) SetChangedColors(node->AsUnsignedCharVector()); if((node = searchNode->GetNode("colorType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetColorType(ColoringMethod(ival)); } else if(node->GetNodeType() == STRING_NODE) { ColoringMethod value; if(ColoringMethod_FromString(node->AsString(), value)) SetColorType(value); } } if((node = searchNode->GetNode("colorTableName")) != 0) SetColorTableName(node->AsString()); if((node = searchNode->GetNode("invertColorTable")) != 0) SetInvertColorTable(node->AsBool()); if((node = searchNode->GetNode("singleColor")) != 0) singleColor.SetFromNode(node); if((node = searchNode->GetNode("multiColor")) != 0) multiColor.SetFromNode(node); if((node = searchNode->GetNode("drawWellsAs")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetDrawWellsAs(WellRenderingMode(ival)); } else if(node->GetNodeType() == STRING_NODE) { WellRenderingMode value; if(WellRenderingMode_FromString(node->AsString(), value)) SetDrawWellsAs(value); } } if((node = searchNode->GetNode("wellCylinderQuality")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 4) SetWellCylinderQuality(DetailLevel(ival)); } else if(node->GetNodeType() == STRING_NODE) { DetailLevel value; if(DetailLevel_FromString(node->AsString(), value)) SetWellCylinderQuality(value); } } if((node = searchNode->GetNode("wellRadius")) != 0) SetWellRadius(node->AsFloat()); if((node = searchNode->GetNode("wellLineWidth")) != 0) SetWellLineWidth(node->AsInt()); if((node = searchNode->GetNode("wellLineStyle")) != 0) SetWellLineStyle(node->AsInt()); if((node = searchNode->GetNode("wellAnnotation")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 4) SetWellAnnotation(WellAnnotation(ival)); } else if(node->GetNodeType() == STRING_NODE) { WellAnnotation value; if(WellAnnotation_FromString(node->AsString(), value)) SetWellAnnotation(value); } } if((node = searchNode->GetNode("wellStemHeight")) != 0) SetWellStemHeight(node->AsFloat()); if((node = searchNode->GetNode("wellNameScale")) != 0) SetWellNameScale(node->AsFloat()); if((node = searchNode->GetNode("legendFlag")) != 0) SetLegendFlag(node->AsBool()); if((node = searchNode->GetNode("nWellBores")) != 0) SetNWellBores(node->AsInt()); if((node = searchNode->GetNode("wellBores")) != 0) SetWellBores(node->AsIntVector()); if((node = searchNode->GetNode("wellNames")) != 0) SetWellNames(node->AsStringVector()); }