Skip to content
Snippets Groups Projects
  1. Mar 05, 2025
  2. Feb 28, 2025
  3. Feb 27, 2025
  4. Feb 14, 2025
  5. Jan 07, 2025
  6. Jan 06, 2025
  7. Jan 05, 2025
  8. Dec 23, 2024
  9. Dec 02, 2024
  10. Nov 01, 2024
  11. Oct 31, 2024
    • Ben Boeckel's avatar
      ci: remove executable permissions from `.ps1` scripts · 9e8c5f42
      Ben Boeckel authored
      PowerShell scripts are not inherently executable and therefore should not have
      the executable bit set.
      9e8c5f42
    • Ben Boeckel's avatar
      ci: use JSON to transfer environment variables · 97ac88e6
      Ben Boeckel authored
      The `set` command in `cmd` has terrible properties in that there's no
      real structure to it. Sensitive sequences in values or variable names
      that are escaping sequences can be interpreted at the wrong time or
      things like newlines in values are not escaped at all and cause
      ambiguities in parsing. Avoid all of that and use PowerShell to use JSON
      as a communication mechanism.
      97ac88e6
  12. Oct 23, 2024
  13. Oct 21, 2024
  14. Oct 19, 2024
  15. Sep 06, 2024
    • Robert M. O'Bara's avatar
      ENH: Removed calling deprecated methods · 92fadb04
      Robert M. O'Bara authored
      Due to updating to ParaView 5.12.1 (both ParaView and VTK deprecations) as well as
      those coming from BOOST
      
      Also made changes need to use nlohman JSON 3.11.3
      
      Updated CI assets based on 9/5/2024
      
      Fixed Clang Tidy Warnings - this included adding a filter to ignore warnings from VTK generated files
      
      Changed WorkletPanel Test XML to work around an issue with ParaView's PluginManagerDialog's pqFileDialog not being named - this will need to be undone when ParaView fixes it on its end.
      92fadb04
  16. Aug 27, 2024
  17. Jul 24, 2024
  18. May 04, 2024
  19. Feb 07, 2024
  20. Feb 05, 2024
  21. Feb 02, 2024
  22. Jan 24, 2024
  23. Dec 17, 2023
  24. Nov 27, 2023
  25. Nov 21, 2023
  26. Oct 28, 2023
  27. Jul 17, 2023
  28. Jul 07, 2023
    • Robert M. O'Bara's avatar
      ENH: Adding Template Support · 367889b6
      Robert M. O'Bara authored
      Attribute Definition Processing has been split into 3 parts:
      1. processDefinitionAtts which processes all of the XML Attributes assigned on the Definition XML node
      2. prcoessDefinitionContents which processes all of the XML children nodes of  the Definition XML node
      3. processDefinitionChildNode which will processes a single child of the Definition XML node
      
      This will allow Definition to eventually use Template Blocks
      
      Also refactored Category Processing into a similar pattern:
      1. processCategoryAtts - processes all of the XML Attributes on a Attribute/Item Definition  XML Node
      2. processOldStyleCategoryNode - processes the content of an old style "Categories" node
      3. processItemDefCategoryInfoNode - processes the content of the current style "CategoryInfo" node
      
      Added processItemDefCategoryInfoNode and processDefCategoryInfoNode for processing Category Information
      for Item and Attribute Definitions respectively
      
      XmlDocV1Parser refactored the following methods:
      
      * processItemDef - split into the following:
        * processItemDef
        * processItemDefAtts - for processing XML Attributes on the ItemDefinition Node
        * processItemDefContents - for processing the children nodes of the ItemDefinition Node
        * processItemDefChildNode - for processing a child node of the ItemDefiniiton Node
      
      * processStringDef - split into the following:
        * processStringDef
        * processStringDefAtts - for processing XML Attributes on the StringItemDefinition Node
        * processStringDefContents - for processing the children nodes of the StringItemDefinition Node
        * processStringDefChildNode - for processing a child node of the StringItemDefinition Node
      
      * processDoubleDef - split into the following:
        * processDoubleDef
        * processDoubleDefContents - for processing the children nodes of the DoubleItemDefinition Node
        * processDoubleDefChildNode - for processing a child node of the DoubleItemDefinition Node
      
      * processIntDef - split into the following:
        * processIntDef
        * processIntDefContents - for processing the children nodes of the IntItemDefinition Node
        * processIntDefChildNode - for processing a child node of the IntItemDefinition Node
      
      Renamed internal helper template function processDerivedValueDef to processDerivedValueDefChildNode
      which now returns a boolean
      
      Also fixed sbt files that contained bad default value elements caught by these new changes.
      
      Starting with Version 7 XML attribute template files, SMTK now supports Templates.  Templates are an extension to the existing ItemBlock concept.  The main difference between an ItemBlock and a Template is that a Template's contents can be parameterized.  When a Template is instantiated, these parameters can be assigned different values and will thereby change the information being copied.  a Template's parameter can also be given a default value.
      
      **Note**  All parameters that do not have a default value must be given values when the Template is instanced.
      
      Here is an example:
      
      . code-block:: xml
      
        <Templates>
      
          <Template Name="SimpleStringDefault">
            <Parameters>
              <Param Name="a">dog</Param>
            </Parameters>
            <Contents>
              <DefaultValue>{a}</DefaultValue>
            </Contents>
          </Template>
      
          <Template Name="SimpleAttribute">
            <Parameters>
              <Param Name="type"/>
            </Parameters>
            <Contents>
              <AttDef Type="{type}">
                <ItemDefinitions>
                  <String Name="s1">
                    <Template Name="SimpleStringDefault">
                      <Param Name="a">cat</Param>
                    </Template>
                  </String>
                  <String Name="s2">
                    <Template Name="SimpleStringDefault"/>
                  </String>
                  <String Name="s3">
                    <Template Name="DiscreteStringInfo">
                      <Param Name="defaultIndex">1</Param>
                    </Template>
                  </String>
                </ItemDefinitions>
              </AttDef>
            </Contents>
          </Template>
        </Templates>
      
        <Definitions>
          <Template Name="SimpleAttribute">
            <Param Name="type">A</Param>
          </Template>
        </Definitions>
      
      See data/attribute/attribute_collection/TemplateTest.sbt and smtk/attribute/testing/cxx/unitTemplates.cxx for examples.  You can also read the discourse on the topic here: https://discourse.kitware.com/t/adding-parameterized-blocks-to-sbt-files/1013/4.
      367889b6
  29. Jun 28, 2023
  30. Jun 27, 2023
  31. Jun 25, 2023
    • Robert M. O'Bara's avatar
      ENH: Adding Support for Units in SMTK · fdc17d3d
      Robert M. O'Bara authored
      Expanding Units Support in Attribute Resource
      ---------------------------------------------
      
      SMTK's Attribute DoubleItems and DoubleItemDefinitions can now support units specified as Defaults
      as well as values.  When a default's or value's units differ from those defined by the Item's Definition,
      they are converted into the Definition's units.  If no conversion is possible then the method assigning
      the default or value will fail.
      
      The Item's value(...) methods will always return the value in the units specified in its Definition.
      The Item's valueAsString(...) methods will always return a string based on the unconverted value
      
      Developer changes
      ~~~~~~~~~~~~~~~~~~
      
      SMTK Resources can now hold a units::System.  In the case of an Attribute Resource, it will have a
      default units::System associated with it at construction time; however, this can be replaced as long
      as there are no Definitions defined within the Resource.
      
      New Resource Methods:
      * setUnitsSystem(const shared_ptr<units::System> & unitsSystem)
      * const shared_ptr<units::System> & unitsSystem() const;
      
      All ItemDefintions now hold onto a units::System.  The methods are protected and are identical to the ones added to Resource.
      
      DoubleItemDefinition has the following new methods:
      
      * bool setDefaultValue(const double& val, const std::string& units);
      * bool setDefaultValue(const std::vector<double>& vals, const std::string& units);
      * bool setDefaultValueAsString(const std::string& val);
      * bool setDefaultValueAsString(const std::vector<std::string>& vals);
      * const std::string defaultValueAsString(std::size_t element = 0) const;
      * const std::vector<std::string> defaultValuesAsStrings() const;
      
      DoubleItem has the following new methods:
      
      * bool setValue(std::size_t element, const double& val, const std::string& units);
      
      In addition, DoubleItem::setValueFromString method can now handle strings that include a double
      followed by an option units.  For example "20 m/s".
      
      **See** smtk/attribute/testing/cxx/unitDoubleItem.cxx for an example of the new API.
      fdc17d3d
  32. May 26, 2023
  33. Apr 03, 2023
  34. Jan 27, 2023
  35. Jan 20, 2023
Loading