Original Message:
Sent: 10-29-2024 16:52
From: David Levy
Subject: Hide paramater from datalinq
Is this time-limited?
I seem to be only able to hide 5 out of 8 rosters.
The rosters are admitted big, with 33 elements each
------------------------------
David Levy
Lead Real Time Graphics Developer
ESPN
Charlotte United States
Original Message:
Sent: 10-29-2024 15:18
From: James Peltzer
Subject: Hide paramater from datalinq
It's a byproduct of the way DashBoard processes structs. The script mechanism I show in my example is the only way I'm aware of to apply the property thoroughly to everything in a struct array.
------------------------------
James Peltzer
Ross Video
Original Message:
Sent: 10-29-2024 15:15
From: David Levy
Subject: Hide paramater from datalinq
Ok, I manually added the attribute to all params and subparams, but some are still coming through and I can't figure out why.
Here's a param that makes it through for some reason:
<param access="1" constrainttype="STRUCT" name="Teams" oid="teams" stream="false" templateoid="teamTemplate" type="STRUCT_ARRAY" widget="table"> <value> <subparam stream="false" suboid="applicationColor" value="#C17A48"/> <subparam stream="false" suboid="rank" value="1"/> <subparam stream="false" suboid="tricode" value="FLA"/> <subparam stream="false" suboid="city" value="FLORIDA"/> <subparam stream="false" suboid="name" value="FLORIDA"/> <subparam stream="false" suboid="mascot" value="Gators"/> <subparam stream="false" suboid="logo" value="file:/T:/MasterLogos/NCAA/Primary_Logos/FLORIDA.PNG"/> <subparam stream="false" suboid="altLogo" value="file:/T:/MasterLogos/NCAA/Alternate_Logos/FLORIDA.PNG"/> <subparam stream="false" suboid="swatch" value="file:/T:/MasterSwatches/NCAA/Primary_Logos/FLORIDA.PNG"/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value> <value> <subparam stream="false" suboid="applicationColor" value="#636363"/> <subparam stream="false" suboid="rank" value=""/> <subparam stream="false" suboid="tricode" value=""/> <subparam stream="false" suboid="city" value=""/> <subparam stream="false" suboid="name" value=""/> <subparam stream="false" suboid="mascot" value=""/> <subparam stream="false" suboid="logo" value=""/> <subparam stream="false" suboid="altLogo" value=""/> <subparam stream="false" suboid="swatch" value=""/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value> <value> <subparam stream="false" suboid="applicationColor" value="#FCD9D9"/> <subparam stream="false" suboid="rank" value=""/> <subparam stream="false" suboid="tricode" value=""/> <subparam stream="false" suboid="city" value=""/> <subparam stream="false" suboid="name" value=""/> <subparam stream="false" suboid="mascot" value=""/> <subparam stream="false" suboid="logo" value=""/> <subparam stream="false" suboid="altLogo" value=""/> <subparam stream="false" suboid="swatch" value=""/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value> <value> <subparam stream="false" suboid="applicationColor" value="#E40F0F"/> <subparam stream="false" suboid="rank" value=""/> <subparam stream="false" suboid="tricode" value=""/> <subparam stream="false" suboid="city" value=""/> <subparam stream="false" suboid="name" value=""/> <subparam stream="false" suboid="mascot" value=""/> <subparam stream="false" suboid="logo" value=""/> <subparam stream="false" suboid="altLogo" value=""/> <subparam stream="false" suboid="swatch" value=""/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value> <value> <subparam stream="false" suboid="applicationColor" value="#E40F0F"/> <subparam stream="false" suboid="rank" value=""/> <subparam stream="false" suboid="tricode" value=""/> <subparam stream="false" suboid="city" value=""/> <subparam stream="false" suboid="name" value=""/> <subparam stream="false" suboid="mascot" value=""/> <subparam stream="false" suboid="logo" value=""/> <subparam stream="false" suboid="altLogo" value=""/> <subparam stream="false" suboid="swatch" value=""/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value> <value> <subparam stream="false" suboid="applicationColor" value="#E40F0F"/> <subparam stream="false" suboid="rank" value=""/> <subparam stream="false" suboid="tricode" value=""/> <subparam stream="false" suboid="city" value=""/> <subparam stream="false" suboid="name" value=""/> <subparam stream="false" suboid="mascot" value=""/> <subparam stream="false" suboid="logo" value=""/> <subparam stream="false" suboid="altLogo" value=""/> <subparam stream="false" suboid="swatch" value=""/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value> <value> <subparam stream="false" suboid="applicationColor" value="#E40F0F"/> <subparam stream="false" suboid="rank" value=""/> <subparam stream="false" suboid="tricode" value=""/> <subparam stream="false" suboid="city" value=""/> <subparam stream="false" suboid="name" value=""/> <subparam stream="false" suboid="mascot" value=""/> <subparam stream="false" suboid="logo" value=""/> <subparam stream="false" suboid="altLogo" value=""/> <subparam stream="false" suboid="swatch" value=""/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value> <value> <subparam stream="false" suboid="applicationColor" value="#925E5E"/> <subparam stream="false" suboid="rank" value=""/> <subparam stream="false" suboid="tricode" value=""/> <subparam stream="false" suboid="city" value=""/> <subparam stream="false" suboid="name" value=""/> <subparam stream="false" suboid="mascot" value=""/> <subparam stream="false" suboid="logo" value=""/> <subparam stream="false" suboid="altLogo" value=""/> <subparam stream="false" suboid="swatch" value=""/> <subparam stream="false" suboid="swatchSelection" value="0"/> <subparam stream="false" suboid="headshotFolder" value=""/> <subparam stream="false" suboid="sessionSelector" value="1"/> <subparam stream="false" suboid="wVaultScore" value="0.0"/> <subparam stream="false" suboid="mVaultScore" value="0.0"/> <subparam stream="false" suboid="unevenBarsScore" value="0.0"/> <subparam stream="false" suboid="beamScore" value="0.0"/> <subparam stream="false" suboid="wFloorScore" value="0.0"/> <subparam stream="false" suboid="mFloorScore" value="0.0"/> <subparam stream="false" suboid="pommelHorseScore" value="0.0"/> <subparam stream="false" suboid="stillRingsScore" value="0.0"/> <subparam stream="false" suboid="parallelBarsScore" value="0.0"/> <subparam stream="false" suboid="horizBarScore" value="0.0"/> </value></param>
------------------------------
David Levy
Lead Real Time Graphics Developer
ESPN
Charlotte United States
Original Message:
Sent: 10-29-2024 14:50
From: James Peltzer
Subject: Hide paramater from datalinq
Hi David.
I have good news and bad news. The bad news is that the way this property is handled, it needs to be applied separately to every instance of every sub-param in the struct. The good news is that the property is exposed via the params.getParam(OID, INDEX).setStream(true/false) script call.
This example panel turns-off streaming for most parameters in the struct right after they are created. The relevant part is in the <api/> tag at the top:
for (var i = 0; i < params.getElementCount('playerList'); i++) { params.getParam('playerList.' + i + '.name', 0).setStream(false); params.getParam('playerList.' + i + '.identifier', 0).setStream(false); params.getParam('playerList.' + i + '.position', 0).setStream(false);}
The entire panel is here:
<abs contexttype="opengear" dblinqport="2222" jsonport="5678" keepalive="false"> <meta> <api immediate="true">for (var i = 0; i < params.getElementCount('playerList'); i++) { params.getParam('playerList.' + i + '.name', 0).setStream(false); params.getParam('playerList.' + i + '.identifier', 0).setStream(false); params.getParam('playerList.' + i + '.position', 0).setStream(false);}</api> <params> <param access="1" name="Player Definition" oid="playerDefinition" stream="false" type="STRUCT" widget="table"> <value> <subparam access="1" maxlength="-1" name="Race Name" stream="false" suboid="name" type="STRING" value="Test" widget="default"/> <subparam access="1" maxlength="-1" name="Id" suboid="identifier" type="STRING" value="Test" widget="default"/> <subparam access="1" constrainttype="STRING_CHOICE" maxlength="-1" name="Position" suboid="position" type="STRING" value="Test" widget="combo"> <constraint>Value 1</constraint> <constraint>Value 2</constraint> <constraint>Value 3</constraint> </subparam> <subparam access="1" constrainttype="STRUCT" name="stats" suboid="stats" type="STRUCT_ARRAY" widget="table"> <value> <subparam access="1" maxlength="-1" name="Stat Name" suboid="name" type="STRING" value="Test" widget="default"/> <subparam access="1" constrainttype="INT_NULL" name="Stat Value" precision="0" suboid="value" type="INT16" value="0" widget="default"/> </value> </subparam> </value> </param> <param access="1" constrainttype="STRUCT" name="Player Definition" oid="playerList" structtype="playerInfo" templateoid="playerDefinition" type="STRUCT_ARRAY" widget="table"> <value> <subparam stream="false" suboid="name" value="Name 0"/> <subparam suboid="identifier" value="ID 0"/> <subparam suboid="position" value="Position 0"/> <subparam suboid="stats"> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> </subparam> </value> <value> <subparam suboid="name" value="Name 1"/> <subparam suboid="identifier" value="ID 1"/> <subparam suboid="position" value="Position 1"/> <subparam suboid="stats"> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> </subparam> </value> <value> <subparam suboid="name" value="Name 2"/> <subparam suboid="identifier" value="ID 2"/> <subparam suboid="position" value="Position 2"/> <subparam suboid="stats"> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> </subparam> </value> <value> <subparam suboid="name" value="Name 3"/> <subparam suboid="identifier" value="ID 3"/> <subparam suboid="position" value="Position 3"/> <subparam suboid="stats"> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> </subparam> </value> <value> <subparam suboid="name" value="Name 4"/> <subparam suboid="identifier" value="ID 4"/> <subparam suboid="position" value="Position 4"/> <subparam suboid="stats"> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> </subparam> </value> <value> <subparam suboid="name" value="Name 5"/> <subparam suboid="identifier" value="ID 5"/> <subparam suboid="position" value="Position 5"/> <subparam suboid="stats"> <value> <subparam suboid="name" value="Stat 1"/> <subparam suboid="value" value="0"/> </value> </subparam> </value> </param> <param access="1" constrainttype="INT_NULL" name="Selection" oid="selection" precision="0" type="INT16" value="1" widget="default"/> </params> <ogscript handles="onload">function handler(tObj, rowIndex, subOid, paramObj, index){ ogscript.debug("CHANGE TO: " + subOid + " [" + rowIndex + "]");}var raceParam = params.getParam('playerList', 0);raceParam.addSubParamListener(raceParam, handler, null);</ogscript> <listener autostart="true" connecthost="localhost" connectport="2222" delimiter="/>" delimitertype="string" name="<stat " syncword="3C"> <task tasktype="ogscript">if (event.isMessageEvent()) { ogscript.debug("GOT " + event.getBytesAsString());}</task> </listener> </meta> <param expand="true" height="308" left="17" oid="playerList" showlabel="false" top="17" width="448"> <config key="w.selectionparam">selection</config> <config key="w.columns">identifier,name,position</config> </param> <button buttontype="push" height="53" left="18" name="Add" top="337" width="297"> <task tasktype="ogscript">var structCount = params.getElementCount('playerList');if (structCount == 1 && params.getValue('playerList.0.identifier', 0) == "") // If this is the first element and it has not been set yet{ structCount = 0;}var newValue = { "name": "Name " + structCount, "identifier": "ID " + structCount, "position": "Position " + structCount, "stats": [ { "name": "Stat 1", "value": 0 } ] };params.setValue('playerList', structCount, newValue);</task> </button> <button buttontype="push" height="54" left="318" name="Clear" top="337" width="140"> <task tasktype="ogscript">params.setValue('selection', 0, 0);var empty = [{"name":"", "identifier":"", "position":"", "stats":[{"name": "", "value": 0}]}];params.setAllValues('playerList', empty);</task> </button> <param expand="true" height="308" id="stats-table" left="488" oid="playerList.0.stats" showlabel="false" top="18" width="448"/> <param expand="true" height="47" left="964" oid="selection" runtasksonload="true" showlabel="false" top="8" width="87"> <task tasktype="ogscript">params.updateParamView('stats-table', 'playerList.' + params.getValue('selection', 0) + '.stats', 0);</task> </param> <button buttontype="push" height="53" left="488" name="Add" top="335" width="297"> <task tasktype="ogscript">var selection = params.getValue('selection', 0);var structCount = params.getElementCount('playerList.' + selection + '.stats');var newValue = { "name": "Stat 1", "value": 0 };params.setValue('playerList.' + selection + '.stats', structCount, newValue);</task> </button> <button buttontype="push" height="54" left="798" name="Clear" top="334" width="140"> <task tasktype="ogscript">var selection = params.getValue('selection', 0);var empty = [{"name": "", "value": 0}];params.setAllValues('playerList.' + selection + '.stats', empty);</task> </button> <button buttontype="push" height="53" left="24" name="Add with setAllValues" top="416" width="297"> <task tasktype="ogscript">var oldValue = params.getAllValues('playerList');var newArray = [];for (var i = 0; i < oldValue.length; i++){ newArray.push(oldValue[i]);}var newValue = { "name": "Name " + oldValue.length, "identifier": "ID " + oldValue.length, "position": "Position " + oldValue.length, "stats": [ { "name": "Stat 1", "value": 0 } ] };newArray.push(newValue);params.setAllValues('playerList', newArray);</task> </button></abs>
------------------------------
James Peltzer
Ross Video
Original Message:
Sent: 10-29-2024 12:04
From: David Levy
Subject: Hide paramater from datalinq
It seems like I can block most things, but struct tables can't be blocked.
------------------------------
David Levy
Lead Real Time Graphics Developer
ESPN
Charlotte United States
Original Message:
Sent: 10-29-2024 11:36
From: David Levy
Subject: Hide paramater from datalinq
I tried the advice here: Hide from datalinq
with the stream="false" option in my params.
However, it only seems to work if I do it with one or two params.
It stops working if I block too many.
Also, does it work for subparams?
There's a lot of params in this dashboard, but I really only want to send a limited amount.
------------------------------
David Levy
Lead Real Time Graphics Developer
ESPN
Charlotte United States
------------------------------