//
// time: Thu Oct 20 11:16:15 2005
//
// version: 3.2.0 (format), 4.3.3 (DX)
//
//
// Begin MDF
// MODULE WebOptions
// CATEGORY Macros
// DESCRIPTION Information needed when running under control of DXServer
// INPUT format; string; "gif"; output format - gif, jpg, png or wrl
// OPTIONS gif ; jpg ; png ; wrl
// INPUT file[visible:0]; string; (no default); location of the output image on the local file system
// INPUT enabled[visible:0]; value list or string list or object; (false); true when running under control of DXServer
// INPUT counters; vector; (no default); 2-vector: execution and loop sequence
// INPUT orbit[visible:0]; integer or string; 0; true for orbit
// OPTIONS false ; true   
// INPUT javaId[visible:0]; integer; (no default); unique identifier - 1 per user
// INPUT imgId[visible:0]; integer; (no default); index into DOM image array
// INPUT orbitDelta; integer; 10; Angle separation between orbit viewpoints (degrees)
// INPUT cacheSize[visible:0]; integer; 0; number of images to cache in the browser
// INPUT groupName[visible:0]; string; (no default); all images in a group enter/leave grouped interaction modes together
// OUTPUT optionCollection; group;  
// End MDF
// workspace: width = 964, height = 992
// layout: snap = 0, width = 50, height = 24, align = NN
//
macro WebOptions(
 format = "gif"
,file
,enabled
,counters
,orbit = 0
,javaId
,imgId
,orbitDelta = 10
,cacheSize = 0
,groupName
) -> (
 optionCollection
) {
    // 
    // node Input[8]: x = 10, y = 460, inputs = 0, label = Input
    // parameter: position = 1, name = 'format', value = '"gif"', descriptive = 0, description = 'output format - gif, jpg, png or wrl', required = 0, visible = 1
    //
WebOptions_Input_8_out_1 = format;
    // 
    // node Attribute[1]: x = 0, y = 930, inputs = 2, label = Attribute
    // input[1]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Attribute_1_out_1 = 
    Attribute(
    NULL,
    WebOptions_Input_8_out_1
    ) [instance: 1, cache: 1];
    // 
    // node Input[10]: x = 106, y = 280, inputs = 0, label = Input
    // parameter: position = 2, name = 'file', value = '(no default)', descriptive = 1, description = 'location of the output image on the local file system', required = 0, visible = 0
    //
WebOptions_Input_10_out_1 = file;
    // 
    // node Attribute[2]: x = 221, y = 926, inputs = 2, label = Attribute
    // input[1]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Attribute_2_out_1 = 
    Attribute(
    NULL,
    WebOptions_Input_10_out_1
    ) [instance: 2, cache: 1];
    // 
    // node Input[53]: x = 705, y = 370, inputs = 0, label = Input
    // parameter: position = 10, name = 'groupName', value = '(no default)', descriptive = 1, description = 'all images in a group enter/leave grouped interaction modes together', required = 0, visible = 0
    //
WebOptions_Input_53_out_1 = groupName;
    // 
    // node Attribute[3]: x = 774, y = 803, inputs = 2, label = Attribute
    // input[1]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Attribute_3_out_1 = 
    Attribute(
    NULL,
    WebOptions_Input_53_out_1
    ) [instance: 3, cache: 1];
    // 
    // node Input[12]: x = 305, y = 100, inputs = 0, label = Input
    // parameter: position = 4, name = 'counters', value = '(no default)', descriptive = 1, description = '2-vector: execution and loop sequence', required = 0, visible = 1
    //
WebOptions_Input_12_out_1 = counters;
    // 
    // node Caption[1]: x = 308, y = 906, inputs = 9, label = Caption
    // input[1]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Caption_1_out_1 = 
    Caption(
    NULL,
    WebOptions_Input_12_out_1,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL
    ) [instance: 1, cache: 1];
    // 
    // node Input[13]: x = 427, y = 10, inputs = 0, label = Input
    // parameter: position = 5, name = 'orbit', value = '0', descriptive = 0, description = 'true for orbit', required = 0, visible = 0
    //
WebOptions_Input_13_out_1 = orbit;
    // 
    // node ChangeGroupMember[1]: x = 789, y = 418, inputs = 5, label = ChangeGroupMember
    // input[1]: visible = 0
    // input[2]: visible = 0
    // input[4]: visible = 0
    // input[5]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_ChangeGroupMember_1_out_1 = 
    ChangeGroupMember(
    NULL,
    NULL,
    WebOptions_Input_13_out_1,
    NULL,
    NULL
    ) [instance: 1, cache: 1];
    // 
    // node Inquire[1]: x = 18, y = 550, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_1_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_8_out_1,
    "is null +1",
    NULL
    ) [instance: 1, cache: 1];
    // 
    // node Switch[1]: x = 33, y = 640, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = "gif"
    //
WebOptions_Switch_1_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_1_out_1,
    WebOptions_Input_8_out_1,
    "gif"
    ) [instance: 1, cache: 1];
    // 
    // node Input[16]: x = 58, y = 370, inputs = 0, label = Input
    // parameter: position = 7, name = 'imgId', value = '(no default)', descriptive = 1, description = 'index into DOM image array', required = 0, visible = 0
    //
WebOptions_Input_16_out_1 = imgId;
    // 
    // node Inquire[9]: x = 66, y = 460, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_9_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_16_out_1,
    "is null +1",
    NULL
    ) [instance: 9, cache: 1];
    // 
    // node Switch[9]: x = 81, y = 550, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 0
    //
WebOptions_Switch_9_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_9_out_1,
    WebOptions_Input_16_out_1,
    0
    ) [instance: 9, cache: 1];
    // 
    // node Inquire[3]: x = 114, y = 370, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_3_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_10_out_1,
    "is null +1",
    NULL
    ) [instance: 3, cache: 1];
    // 
    // node Switch[3]: x = 129, y = 460, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = "image"
    //
WebOptions_Switch_3_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_3_out_1,
    WebOptions_Input_10_out_1,
    "image"
    ) [instance: 3, cache: 1];
    // 
    // node Input[11]: x = 154, y = 190, inputs = 0, label = Input
    // parameter: position = 3, name = 'enabled', value = '(false)', descriptive = 1, description = 'true when running under control of DXServer', required = 0, visible = 0
    //
WebOptions_Input_11_out_1 = enabled;
    // 
    // node Inquire[4]: x = 162, y = 280, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_4_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_11_out_1,
    "is null +1",
    NULL
    ) [instance: 4, cache: 1];
    // 
    // node Switch[4]: x = 177, y = 370, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 0
    //
WebOptions_Switch_4_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_4_out_1,
    WebOptions_Input_11_out_1,
    0
    ) [instance: 4, cache: 1];
    // 
    // node Inquire[5]: x = 313, y = 190, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_5_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_12_out_1,
    "is null +1",
    NULL
    ) [instance: 5, cache: 1];
    // 
    // node Switch[5]: x = 328, y = 280, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = [ 0, 0]
    //
WebOptions_Switch_5_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_5_out_1,
    WebOptions_Input_12_out_1,
    [ 0, 0]
    ) [instance: 5, cache: 1];
    // 
    // node Inquire[6]: x = 400, y = 190, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null"
    // input[3]: visible = 0
    //
WebOptions_Inquire_6_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_13_out_1,
    "is null",
    NULL
    ) [instance: 6, cache: 1];
    // 
    // node Inquire[38]: x = 435, y = 100, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "string match"
    // input[3]: defaulting = 0, visible = 0, type = 32, value = "true"
    //
WebOptions_Inquire_38_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_13_out_1,
    "string match",
    "true"
    ) [instance: 38, cache: 1];
    // 
    // node Inquire[39]: x = 470, y = 190, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "string match"
    // input[3]: defaulting = 0, visible = 0, type = 32, value = "false"
    //
WebOptions_Inquire_39_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_13_out_1,
    "string match",
    "false"
    ) [instance: 39, cache: 1];
    // 
    // node Compute[1]: x = 415, y = 280, inputs = 4, label = Compute
    // input[1]: defaulting = 0, visible = 0, type = 32, value = "$0==1?1:$2==1?1:$1==1?2:3"
    // expression: value = null==1?1:false==1?1:true==1?2:3
    // name[2]: value = null
    // name[3]: value = true
    // name[4]: value = false
    //
WebOptions_Compute_1_out_1 = 
    Compute(
    "$0==1?1:$2==1?1:$1==1?2:3",
    WebOptions_Inquire_6_out_1,
    WebOptions_Inquire_38_out_1,
    WebOptions_Inquire_39_out_1
    ) [instance: 1, cache: 1];
    // 
    // node Switch[6]: x = 399, y = 370, inputs = 4, label = Switch
    // input[2]: defaulting = 0, visible = 1, type = 67108863, value = 0
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 1
    //
WebOptions_Switch_6_out_1[cache: 2] = 
    Switch(
    WebOptions_Compute_1_out_1,
    0,
    1,
    WebOptions_Input_13_out_1
    ) [instance: 6, cache: 1];
    // 
    // node Input[14]: x = 513, y = 284, inputs = 0, label = Input
    // parameter: position = 6, name = 'javaId', value = '(no default)', descriptive = 1, description = 'unique identifier - 1 per user', required = 0, visible = 0
    //
WebOptions_Input_14_out_1 = javaId;
    // 
    // node Inquire[7]: x = 510, y = 370, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_7_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_14_out_1,
    "is null +1",
    NULL
    ) [instance: 7, cache: 1];
    // 
    // node Switch[7]: x = 483, y = 460, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 0
    //
WebOptions_Switch_7_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_7_out_1,
    WebOptions_Input_14_out_1,
    0
    ) [instance: 7, cache: 1];
    // 
    // node Input[51]: x = 620, y = 370, inputs = 0, label = Input
    // parameter: position = 8, name = 'orbitDelta', value = '10', descriptive = 0, description = 'Angle separation between orbit viewpoints (degrees)', required = 0, visible = 1
    //
WebOptions_Input_51_out_1 = orbitDelta;
    // 
    // node Inquire[35]: x = 562, y = 460, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_35_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_51_out_1,
    "is null +1",
    NULL
    ) [instance: 35, cache: 1];
    // 
    // node Switch[32]: x = 577, y = 550, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 10
    //
WebOptions_Switch_32_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_35_out_1,
    WebOptions_Input_51_out_1,
    10
    ) [instance: 32, cache: 1];
    // 
    // node Input[52]: x = 656, y = 460, inputs = 0, label = Input
    // parameter: position = 9, name = 'cacheSize', value = '0', descriptive = 0, description = 'number of images to cache in the browser', required = 0, visible = 0
    //
WebOptions_Input_52_out_1 = cacheSize;
    // 
    // node Inquire[36]: x = 664, y = 550, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_36_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_52_out_1,
    "is null +1",
    NULL
    ) [instance: 36, cache: 1];
    // 
    // node Switch[33]: x = 679, y = 639, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = 0
    //
WebOptions_Switch_33_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_36_out_1,
    WebOptions_Input_52_out_1,
    0
    ) [instance: 33, cache: 1];
    // 
    // node Inquire[37]: x = 713, y = 460, inputs = 3, label = Inquire
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "is null +1"
    // input[3]: visible = 0
    //
WebOptions_Inquire_37_out_1[cache: 2] = 
    Inquire(
    WebOptions_Input_53_out_1,
    "is null +1",
    NULL
    ) [instance: 37, cache: 1];
    // 
    // node Switch[34]: x = 728, y = 550, inputs = 3, label = Switch
    // input[3]: defaulting = 0, visible = 1, type = 67108863, value = "untitled"
    //
WebOptions_Switch_34_out_1[cache: 2] = 
    Switch(
    WebOptions_Inquire_37_out_1,
    WebOptions_Input_53_out_1,
    "untitled"
    ) [instance: 34, cache: 1];
    // 
    // node CollectNamed[1]: x = 57, y = 730, inputs = 20, label = CollectNamed
    // input[2]: defaulting = 0, visible = 1, type = 32, value = "format"
    // input[4]: defaulting = 0, visible = 1, type = 32, value = "imgId"
    // input[6]: defaulting = 0, visible = 1, type = 32, value = "file"
    // input[8]: defaulting = 0, visible = 1, type = 32, value = "enabled"
    // input[10]: defaulting = 0, visible = 1, type = 32, value = "counters"
    // input[12]: defaulting = 0, visible = 1, type = 32, value = "orbit"
    // input[14]: defaulting = 0, visible = 1, type = 32, value = "javaid"
    // input[16]: defaulting = 0, visible = 1, type = 32, value = "orbitDelta"
    // input[18]: defaulting = 0, visible = 1, type = 32, value = "cacheCount"
    // input[20]: defaulting = 0, visible = 1, type = 32, value = "groupName"
    //
WebOptions_CollectNamed_1_out_1[cache: 2] = 
    CollectNamed(
    WebOptions_Switch_1_out_1,
    "format",
    WebOptions_Switch_9_out_1,
    "imgId",
    WebOptions_Switch_3_out_1,
    "file",
    WebOptions_Switch_4_out_1,
    "enabled",
    WebOptions_Switch_5_out_1,
    "counters",
    WebOptions_Switch_6_out_1,
    "orbit",
    WebOptions_Switch_7_out_1,
    "javaid",
    WebOptions_Switch_32_out_1,
    "orbitDelta",
    WebOptions_Switch_33_out_1,
    "cacheCount",
    WebOptions_Switch_34_out_1,
    "groupName"
    ) [instance: 1, cache: 1];
    // 
    // node Enumerate[1]: x = 81, y = 893, inputs = 5, label = Enumerate
    // input[1]: visible = 0
    // input[2]: visible = 0
    // input[4]: visible = 0
    // input[5]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Enumerate_1_out_1 = 
    Enumerate(
    NULL,
    NULL,
    WebOptions_Input_16_out_1,
    NULL,
    NULL
    ) [instance: 1, cache: 1];
    // 
    // node Enumerate[2]: x = 478, y = 848, inputs = 5, label = Enumerate
    // input[1]: visible = 0
    // input[2]: visible = 0
    // input[4]: visible = 0
    // input[5]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Enumerate_2_out_1 = 
    Enumerate(
    NULL,
    NULL,
    WebOptions_Input_14_out_1,
    NULL,
    NULL
    ) [instance: 2, cache: 1];
    // 
    // node Enumerate[3]: x = 590, y = 799, inputs = 5, label = Enumerate
    // input[1]: visible = 0
    // input[2]: visible = 0
    // input[4]: visible = 0
    // input[5]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Enumerate_3_out_1 = 
    Enumerate(
    NULL,
    NULL,
    WebOptions_Input_51_out_1,
    NULL,
    NULL
    ) [instance: 3, cache: 1];
    // 
    // node Enumerate[4]: x = 679, y = 800, inputs = 5, label = Enumerate
    // input[1]: visible = 0
    // input[2]: visible = 0
    // input[4]: visible = 0
    // input[5]: visible = 0
    // output[1]: visible = 0
    //
WebOptions_Enumerate_4_out_1 = 
    Enumerate(
    NULL,
    NULL,
    WebOptions_Input_52_out_1,
    NULL,
    NULL
    ) [instance: 4, cache: 1];
    // 
    // node Output[1]: x = 270, y = 820, inputs = 1, label = Output
    // parameter: position = 1, name = 'optionCollection', value = ' ', descriptive = 0, description = ' ', required = 0, visible = 1
    //
optionCollection = WebOptions_CollectNamed_1_out_1;
    //
    // decorator Annotate	pos=(584,0) size=292x92 style(Label), value = <NULL>
    // annotation user_begin: 144
    // annotation user: Who uses it?
    // annotation user: <NULL>
    // annotation user: When   u   click   on   the  'Edit/Java/Add
    // annotation user: Tools'  button, then  dxui  places  this  in
    // annotation user: the vpe and attaches it to an image tool.
    // annotation user_end: <NULL>
    //
    // decorator Annotate	pos=(588,99) size=314x108 style(Label), value = <NULL>
    // annotation user_begin: 172
    // annotation user: What's it for?
    // annotation user: <NULL>
    // annotation user: It consolidates a whole bunch of things that
    // annotation user: JavaDX needs.  All this  stuff is  condensed
    // annotation user: onto 1 arc. That way the image tool doesn't
    // annotation user: run out of input tabs.
    // annotation user_end: <NULL>
    //
    // decorator Annotate	pos=(592,223) size=372x76 style(Label), value = <NULL>
    // annotation user_begin: 120
    // annotation user: How is it located?
    // annotation user: <NULL>
    // annotation user: It's  installed  in   $DXROOT/java/server/dxmacros.
    // annotation user: The dx script appends the location to $DXMACROS.
    // annotation user_end: <NULL>
    //
    // decorator Annotate	pos=(477,927) size=331x60 style(Label), value = <NULL>
    // annotation user_begin: 118
    // annotation user: By hooking inputs to modules that require the
    // annotation user: type the input should  be, we force the Type of
    // annotation user: the Input to be correct.
    // annotation user_end: <NULL>
// network: end of macro body
}
WebOptions_Input_8_out_1 = NULL;
WebOptions_Input_10_out_1 = NULL;
WebOptions_Input_53_out_1 = NULL;
WebOptions_Input_12_out_1 = NULL;
WebOptions_Input_13_out_1 = NULL;
WebOptions_Inquire_1_out_1 = NULL;
WebOptions_Switch_1_out_1 = NULL;
WebOptions_Input_16_out_1 = NULL;
WebOptions_Inquire_9_out_1 = NULL;
WebOptions_Switch_9_out_1 = NULL;
WebOptions_Inquire_3_out_1 = NULL;
WebOptions_Switch_3_out_1 = NULL;
WebOptions_Input_11_out_1 = NULL;
WebOptions_Inquire_4_out_1 = NULL;
WebOptions_Switch_4_out_1 = NULL;
WebOptions_Inquire_5_out_1 = NULL;
WebOptions_Switch_5_out_1 = NULL;
WebOptions_Inquire_6_out_1 = NULL;
WebOptions_Inquire_38_out_1 = NULL;
WebOptions_Inquire_39_out_1 = NULL;
WebOptions_Compute_1_out_1 = NULL;
WebOptions_Switch_6_out_1 = NULL;
WebOptions_Input_14_out_1 = NULL;
WebOptions_Inquire_7_out_1 = NULL;
WebOptions_Switch_7_out_1 = NULL;
WebOptions_Input_51_out_1 = NULL;
WebOptions_Inquire_35_out_1 = NULL;
WebOptions_Switch_32_out_1 = NULL;
WebOptions_Input_52_out_1 = NULL;
WebOptions_Inquire_36_out_1 = NULL;
WebOptions_Switch_33_out_1 = NULL;
WebOptions_Inquire_37_out_1 = NULL;
WebOptions_Switch_34_out_1 = NULL;
WebOptions_CollectNamed_1_out_1 = NULL;
