ADTF Config Tool

Since ADTF version 3.3.0 there is a config tool available (bin\adtf_config_tool.exe). The ADTF Config Tool allows the user to manipulate ADTF Graph and ADTF Properties files. It can be used in scripting environments to perform basic tasks like activating/deactivating ADTF Graph items and/or change property values. You can compare it to light console version of ADTF Configuration Editor with the focus for scripting. Please take a look at the tools --help output for documentation of the available commands:

                
adtf_config_tool

Usage:
        adtf_config_tool --help
        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute objects [--plugin-description]

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute systemobjects
                         [--plugin-description]

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute plugindescription <graphobject>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute isactive <graphobject>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute activate <graphobject>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute deactivate <graphobject>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute listprops <graphobject>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute listpropvalues <graphobject>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute setprop <graphobject>
                         <propertyname> <value>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute getprop <graphobject>
                         <propertyname>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute addservice <classid> [--objectid
                         <object id>] [--runlevel <runlevel>]

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute addcomponent <graph>
                         <componenttype> <classid> <label>

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute connect <component> <component>
                         [--output-pin <pin>] ([--input-pin <pin>] | [--runner-pin <pin>])

        adtf_config_tool [--dry-run] [--environment <adtfenvironmentfile>] [--session
                         <adtfsessionfile>] [--graph <adtfgraphfile>] [--properties
                         <adtfgraphpropertiesfile>] [--system <adtfsystemfile>] [--system-properties
                         <adtfsystempropertiesfile>] [--cesettings <adtfcesettingsfile>]
                         [--validate-plugindescription] --execute create_session <folder>
                         <session_name> [--graph-name <graphname>] [--system-name <systemname>]

Options:
        --help, -h  Print the usage info and quit.
        --dry-run   Do not save changes to the files.
        --environment <adtfenvironmentfile>
                    Specify an ADTF environment file that should be loaded. This overrides whatever
                    is specified in the settings file.

        --session <adtfsessionfile>
                    Loads the given session file and its referenced system, graph and properties
                    files.

        --graph <adtfgraphfile>
                    Loads the given graph file.

        --properties <adtfgraphpropertiesfile>
                    Loads the given properties file.

        --system <adtfsystemfile>
                    Loads the given system file.

        --system-properties <adtfsystempropertiesfile>
                    Loads the given system properties file.

        --cesettings <adtfcesettingsfile>
                    Loads the given cesettings file.

        --validate-plugindescription
                    Activate the plugindescription validation

        --execute, -e
                    Execute command and quit

        Available commands:

          objects [--plugin-description]

            List all available graph objects.

              --plugin-description
                    print plugin descriptions

          systemobjects [--plugin-description]

            List all available system objects.

              --plugin-description
                    print plugin descriptions

          plugindescription <graphobject>

            List all available plugindescription information of graph object.

              <graphobject>
                    The name of the graph object.

          isactive <graphobject>

            Prints whether the the given graph object is activated or deactivated.

              <graphobject>
                    The name of the graph object.

          activate <graphobject>

            Activate the given graph object.

              <graphobject>
                    The name of the graph object.

          deactivate <graphobject>

            Deactivate the given graph object.

              <graphobject>
                    The name of the graph object.

          listprops <graphobject>

            List the properties of the given graph object.

              <graphobject>
                    The name of the graph object.

          listpropvalues <graphobject>

            List the properties and their values of the given graph object.

              <graphobject>
                    The name of the graph object.

          setprop <graphobject> <propertyname> <value>

            Set the given property value of the given graph object.

              <graphobject>
                    The name of the graph object.

              <propertyname>
                    The name of the property.

              <value>
                    The new value of the property.

          getprop <graphobject> <propertyname>

            Get a property value of the given graph object.

              <graphobject>
                    The name of the graph object.

              <propertyname>
                    The name of the property.

          addservice <classid> [--objectid <object id>] [--runlevel <runlevel>]

            Add a service to the system.

              <classid>
                    The class id of the service.

              --objectid <object id>
                    The object id.

              --runlevel <runlevel>
                    The runlevel at which the service should be initialized.

          addcomponent <graph> <componenttype> <classid> <label>

            Add a component to given graph.

              <graph>
                    The name of the graph.

              <componenttype>
                    The type of the component, one of: samplestream, bindingproxy, filter,
                    activerunner, sink, source

              <classid>
                    The class id of the component.

              <label>
                    The label of the component.

          connect <component> <component> [--output-pin <pin>] ([--input-pin <pin>] | [--runner-pin
          <pin>])

            Connect two given components in the same graph via given pins.

              <component>
                    The name of the source component.

              <component>
                    The name of the destination component.

              --output-pin <pin>
                    Source data pin name.

              --input-pin <pin>
                    Destination data pin name.

              --runner-pin <pin>
                    Destination runner pin.

          create_session <folder> <session_name> [--graph-name <graphname>] [--system-name
          <systemname>]

            <folder> <session_name> [--graph-name <graphname>] [--system-name <systemname>]
                    Create session


                
            

Available objects of an ADTF Session

To reference any ADTF Component inside the ADTF Session you need to know its unique path. To list the path of all ADTF Components inside an ADTF Graph file issue the following command (either supply the name of an ADTF Session file or the name of ADTF Graph file):

If you have selected one of the ADTF Components you can use

adtf_config_tool.exe --session|--graph <sessionfile|graphfile> -e listprops <component>

to get a list of all available properties which can be set via setprop and getprop.

Example add and connect a Filter

Since version 3.4.0 you can use the method addcomponent to add a new ADTF Component into an existing ADTF Graph in an existing .adtfgraph file

adtf_config_tool.exe --session|--graph <sessionfile|graphfile> -e addcomponent <GRAPH> <COMPONENT_TYPE> <CLASS_ID> <LABEL>

To find an existing ADTF Graph file for the parameter <GRAPH> use adtf_config_tool.exe <session> -e objects. Than define the <COMPONENT_TYPE> which you want to add to the ADTF Graph. Possible values are:

and the <CLASS_ID> of the componet (e.g. default_sample_stream.streaming.adtf.cid). Finally choose a name for the added ADTF Component in the ADTF Graph, the name must be unique.

The following example adds two Filters and establishes a connection beween these two ADTF Components. Note: The Sample Stream in between will be added automatically.

            
adtf_config_tool.exe --session|--graph <sessionfile|graphfile> -e addcomponent "Playback Sample/graphs/video_visual/" "filter" "generate.filter.adtf.cid" "DataSource"
adtf_config_tool.exe --session|--graph <sessionfile|graphfile> -e addcomponent "Playback Sample/graphs/video_visual/" "filter" "access.filter.adtf.cid" "DataSink"
adtf_config_tool.exe --session|--graph <sessionfile|graphfile> -e connect "Playback Sample/graphs/video_visual/filters/DataSource" "Playback Sample/graphs/video_visual/filters/DataSink" --output-pin out --input_pin in
        

Using own components

Basically the ADTF Config Tool knows everything the ADTF Configuration Editor in default setup. If your adtfplugins are available via the default settings (adtf.adtfenvironment within $(ADTF_DIR) and adtf_configuration_editor.cesettings within your HOME directory), it will work out of the box. If not, you must either extend this default files or use custom ones with --environment / --cesettings. We recommend extending your calls with --validate-plugindescription to get sure your setup is correct.

Scripting Mode

The ADTF Config Tool supports very basic scripting (see -e command). For more information on how to do this, please have a look at our Create Graph Scripting Example.

Where to go next?

With the ADTF Statusmonitor you can receive some system information during runtime.