35 lines
2.1 KiB
Markdown
35 lines
2.1 KiB
Markdown
|
|
Ok. We're extending the DAPS language to support specifying at most 1 postrin and at most 1 negtrin for each DAP spec. I.e: we'll no longer treat negtrins/postrins as their own qualeifaceapis attached to a deviceselector, but rather now negtrins and postrins will be attached to the nontrins they are triggered by. So looking at avia0.dapss:
|
||
|
|
|
||
|
|
```
|
||
|
|
// This line will be entirely deleted:
|
||
|
|
+edev|avia0|postrin(
|
||
|
|
from-stimbuff=pcloudAmbience|
|
||
|
|
interest-pc=85|
|
||
|
|
passband-count-lt-val=8
|
||
|
|
)
|
||
|
|
|livoxGen1()|livoxProto1(SMO_IP)|3JEDK380010Z39||
|
||
|
|
|
||
|
|
// And this one will be deleted too:
|
||
|
|
+edev|avia0|negtrin(
|
||
|
|
from-stimbuff=pcloudAmbience|
|
||
|
|
interest-pc=85|distraction-pc=90|intolerable-pc=95|
|
||
|
|
passband-count-gt-val=120
|
||
|
|
)
|
||
|
|
|livoxGen1()|livoxProto1(SMO_IP)|3JEDK380010Z39
|
||
|
|
|
||
|
|
// And this line will be modified from:
|
||
|
|
+edev|avia0|pcloudAmbience()|livoxGen1()|livoxProto1(SMO_IP)|3JEDK380010Z39||
|
||
|
|
|
||
|
|
// To:
|
||
|
|
+edev|avia0| postrin(interest-pc=85)| negtrin(interest-pc=85) |pcloudAmbience(passband-count-lt-val=8|passband-count-gt-val=120)|livoxGen1()|livoxProto1(SMO_IP)|3JEDK380010Z39||
|
||
|
|
```
|
||
|
|
|
||
|
|
So we're adding the ability to spec intrins on nontrin stimbuffs. Any DAP spec can declare 0 or 1 negtrin and 0 or 1 postrin. These must be declared before the first qualeIfaceApi.
|
||
|
|
|
||
|
|
Modify the current DAP spec lex/yacc files to support thissyntax; as well as the current DeviceAttachmentSpec struct type too. And update the current stimbuff devices if they use the current postrin/negtrin parameters. Let them look for these new postrin and negtrin specs and their params instead. For the official language-level spec, you can use these names for the new specifiers:
|
||
|
|
|
||
|
|
```
|
||
|
|
sensor-type|dev-identifier|postrin-spec(postrin-params)|negtrin-spec(negtrin-params)|quale-iface-api(quale-iface-api-params)|stim-buff-api(api-params)|provider(provider-params)|dev-selector
|
||
|
|
```
|
||
|
|
|
||
|
|
NB: The postrin and negtrin spec have no ordering requirement with respect to one another. They are only ordered with respect to the other specifiers in the DAP specs -- i.e: again, they must precede the qualeIfaceApi specifier. So the negtrin may appear before the postrin; and vice versa.
|