Merge branch 'hotfix/v01.05.01'
[tidl/tidl-api.git] / docs / source / api.rst
1 .. _api-documentation:
3 *************
4 API Reference
5 *************
7 .. _api-ref-configuration:
9 Configuration
10 +++++++++++++
11 .. doxygenclass:: tidl::Configuration
12     :members:
14 Configuration file
15 ==================
17 TIDL API allows the user to create a Configuration object by reading from a file or by initializing it directly. Configuration settings supported by ``Configuration::ReadFromFile``:
19     * numFrames
20     * inWidth
21     * inHeight
22     * inNumChannels
23     * preProcType
24     * layerIndex2LayerGroupId
26     * inData
27     * outData
29     * netBinFile
30     * paramsBinFile
32     * quantHistoryParam1
33     * quantHistoryParam2
34     * quantMargin
36     * enableTrace
38 An example configuration file:
40 .. literalinclude:: ../../examples/layer_output/j11_v2_trace.txt
41     :language: bash
44 .. _layer-group-override:
46 Overriding layer group assignment
47 =================================
48 The `TIDL device translation tool`_ assigns layer group ids to layers during the translation process. TIDL API 1.1 and higher allows the user to override this assignment by specifying explicit mappings. There are two ways for the user to provide an updated mapping:
50 1. Specify a mapping in the configuration file to indicate that layers 12, 13 and 14 are assigned to layer group 2:
52 .. code-block:: c++
54     layerIndex2LayerGroupId = { {12, 2}, {13, 2}, {14, 2} }
57 2. User can also provide the layer index to group mapping in the code:
59 .. code-block:: c++
61     Configuration c;
62     c.ReadFromFile("test.cfg");
63     c.layerIndex2LayerGroupId = { {12, 2}, {13, 2}, {14, 2} };
66 .. role:: cpp(code)
67    :language: c++
70 .. _api-ref-executor:
72 Executor
73 ++++++++
74 .. doxygenclass:: tidl::Executor
75     :members:
77 .. _api-ref-eo:
79 ExecutionObject
80 +++++++++++++++
81 .. doxygenclass:: tidl::ExecutionObject
82     :members:
84 .. _api-ref-eop:
86 ExecutionObjectPipeline
87 +++++++++++++++++++++++
88 .. doxygenclass:: tidl::ExecutionObjectPipeline
89     :members:
92 .. refer https://breathe.readthedocs.io/en/latest/directives.html
94 .. _TIDL device translation tool: http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components_TIDL.html#import-process