annotate wiki/ConfigurationFileFormat.wiki @ 706:f8e90b5d85fd tip

Delete CARFAC code from this repository. It has been moved to https://github.com/google/carfac Please email me with your github username to get access. I've also created a new mailing list to discuss CARFAC development: https://groups.google.com/forum/#!forum/carfac-dev
author ronw@google.com
date Thu, 18 Jul 2013 20:56:51 +0000
parents 2fca84ddd8e3
children
rev   line source
tom@439 1 #summary Format for aimcconfig files
tom@439 2
tom@439 3 The AIM-C configuration file is a simple text file in the format parsed by [http://code.jellycan.com/simpleini/ simpleini].
tom@439 4
tom@439 5 The file describes a tree of modules, with the output of each module feeding into zero, one or more other modules. Each node of the tree is an _instance_ of an AIM-C module. Each node can have a different set of parameters.
tom@439 6
tom@439 7 == Example ==
tom@439 8
tom@439 9 {{{
tom@439 10 module1.name = FileInput
tom@439 11 module1.id = file_input
tom@439 12 module1.child1 = PZFCFilterbank
tom@439 13
tom@439 14 module2.name = PZFCFilterbank
tom@439 15 module2.id = pzfc
tom@439 16 module2.child1 = NAP
tom@439 17
tom@439 18 module3.name = NAP
tom@439 19 module3.id = hcl
tom@439 20 module3.child1 = Strobes
tom@439 21
tom@439 22 module4.name = Strobes
tom@439 23 module4.id = local_max
tom@439 24 module4.parameters = <<<ENDPARAMS
tom@439 25 ENDPARAMS
tom@439 26 module4.child1 = SAI
tom@439 27
tom@439 28 module5.name = SAI
tom@439 29 module5.id = weighted_sai
tom@439 30 module5.child1 = SAIMovie
tom@439 31
tom@439 32 module6.name = SAIMovie
tom@439 33 module6.id = graphics_time
tom@439 34 module6.parameters = <<<ENDPARAMS
tom@439 35 graph.y.min=0
tom@439 36 graph.y.max=0.5
tom@439 37 graph.freq.label=Cochlear Channel
tom@439 38 graph.x.label=Time Interval
tom@439 39 graph.type=line
tom@439 40 ENDPARAMS
tom@439 41 }}}
tom@439 42
tom@439 43 Each module has a number. The varaibles {{{module<n>.name and module<n>.id}}} are required for each module. If {{{module<n>.parameters and module<n>.child<m>}}} are specified they will be used. If no parameters are specified for a given module, the defaults are used. Any parameters given for a module override the defaults built in to the module.
tom@439 44
tom@439 45 === Module names and identifiers ===
tom@439 46 Each module specified in the tree is an instance of an AIM-C module with a specific set of parameters. By convention each instance of a module is identified by a [http://en.wikipedia.org/wiki/CamelCase camel case] name, and each module is identified by a lowercase name with underscores.
tom@439 47
tom@439 48 === Module parameters ===
tom@439 49
tom@439 50 All AIM-C modules can have a default set of parameters. These can be overridden by parameters in the {{{module<n>.parameters}}} section of the configuration file.
tom@439 51
tom@439 52