ROOT object 
                    
                          This top level object holds all configuration information for this plugin. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options object 
                    
                          Configuration options specific to this plugin. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition object 
                    
                          An object defining the acquisition. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.task object 
                    
                          The acquisition task properties.  The following variables are available for use here: @VAR{instanceName}, @VAR{timestamp}, @VAR{readSamplesPerChannel} 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.task.name string 
                    
                          The name of the task.  Variables available here: @VAR{instanceName}, @VAR{readSamplesPerChannel}, @VAR{timestamp}. 
                         Required: true 
                         Default: "NI DAQmx DI Task" 
                        
                     
                 
                
                
                     options.acquisition.channels array 
                    
                          An array of virtual channel definitions where each virtual channel can encapsulate multiple physical channels. 
                         Required: true 
                         Default: [
    {
        "name": "Voltage Channels",
        "lines": "Dev1/port0/line0:2",
        "invertDisplayValues": false,
        "falseLabel": "OFF",
        "trueLabel": "ON"
    }
]  
                        
                     
                 
                
                
                     options.acquisition.channels[n] object 
                    
                          An object defining a virtual channel (which can encapsulte multiple physical channels). 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.channels[n].name string 
                    
                          The name of the virtual channel (collection of physical channels). 
                         Required: true 
                         Default: "Digital Channels" 
                        
                     
                 
                
                
                     options.acquisition.channels[n].lines string 
                    
                          This lines to acquire. 
                         Required: true 
                         Default: "Dev1/port0/line0:2" 
                        
                     
                 
                
                
                     options.acquisition.channels[n].invertDisplayValues boolean 
                    
                          Inverts the display of the digital input value so that if voltage high is received then the false state is displayed, and if voltage low is received then the true state is displayed.  Importantly, this does NOT change / invert the logged digital input value or the published value. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.channels[n].falseLabel string 
                    
                          A semantic label to overlay on the LED boolean display when the false state is displayed.  When the line display is in the false state, the digital input display is white. 
                         Required: true 
                         Default: "OFF" 
                        
                     
                 
                
                
                     options.acquisition.channels[n].trueLabel string 
                    
                          A semantic label to overlay on the LED boolean display when the true state is displayed.  When the line display is in the true state, the digital input display is green. 
                         Required: true 
                         Default: "ON" 
                        
                     
                 
                
                
                     options.acquisition.sampling object 
                    
                          The acquisition task sampling properties. 
                         Required: true 
                         Default: {
    "strategy": "Change Detection",
    "mode": "Continuous Samples",
    "samplesPerChannel": 1,
    "risingEdgeLines": "Dev1/port0/line0:2",
    "fallingEdgeLines": "Dev1/port0/line0:2",
    "timeout": 10
}  
                        
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed} object 
                    
                          The acquisition task sampling properties. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed}.strategy enum (string) 
                    
                          Specifies that this is a Hardware Timed sampling definition. 
                         Required: true 
                         Default: "Hardware Timed" 
                         Enum Items: "Hardware Timed" 
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed}.mode enum (string) 
                    
                          The sampling mode which determines how samples are gathered by the device.  One of: Finite Samples, Continuous Samples, Hardware Timed Single Point 
                         Required: true 
                         Default: "Continuous Samples" 
                         Enum Items: "Finite Samples" | "Continuous Samples" | "Hardware Timed Single Point" 
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed}.rate number 
                    
                          The sampling rate to use specified in samples/second (Hz). 
                         Required: true 
                         Default: 1 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed}.samplesPerChannel integer 
                    
                          The number of samples to grab.  For finite acquisitions this should be the total number of samples desired.  For continuous acquisitions, this should be the number of samples to grab on each underlying loop iteration (and this value also informs the buffer size unless explicitly specified otherwise).  For single point acquisitions, this should be set to 1. 
                         Required: true 
                         Default: 1 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed}.source string 
                    
                          The source of the sample clock.  You may specify an externally available source pin (ex. /Dev1/ai/StartTrigger or Dev1/PFI0), or simply use the value OnboardClock (no spaces) to use the onboard clock. 
                         Required: true 
                         Default: "OnboardClock" 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed}.activeEdge enum (string) 
                    
                          Determines which edge of the clock signal is used to acquire samples. 
                         Required: true 
                         Default: "Rising" 
                         Enum Items: "Rising" | "Falling" 
                     
                 
                
                
                     options.acquisition.sampling::{Hardware Timed}.timeout number 
                    
                          How long to wait in seconds before generating a timeout error.  Make sure this number is greater than your sampling rate * number of samples per channel being read. 
                         Required: true 
                         Default: 5 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Change Detection} object 
                    
                          The acquisition task sampling properties. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Change Detection}.strategy enum (string) 
                    
                          Specifies that this is a Change Detection sampling definition. 
                         Required: true 
                         Default: "Change Detection" 
                         Enum Items: "Change Detection" 
                     
                 
                
                
                     options.acquisition.sampling::{Change Detection}.mode enum (string) 
                    
                          The sampling mode which determines how samples are gathered by the device.  One of: Finite Samples, Continuous Samples, Hardware Timed Single Point 
                         Required: true 
                         Default: "Continuous Samples" 
                         Enum Items: "Finite Samples" | "Continuous Samples" | "Hardware Timed Single Point" 
                     
                 
                
                
                     options.acquisition.sampling::{Change Detection}.samplesPerChannel integer 
                    
                          The number of samples to grab.  For finite acquisitions this should be the total number of samples desired.  For continuous acquisitions, this should be the number of samples to grab on each underlying loop iteration (and this value also informs the buffer size unless explicitly specified otherwise).  For single point acquisitions, this should be set to 1. 
                         Required: true 
                         Default: 1 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Change Detection}.risingEdgeLines string 
                    
                          The names of the digital lines or ports on which to detect rising edges. 
                         Required: true 
                         Default: "Dev1/port0/line0:2" 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Change Detection}.fallingEdgeLines string 
                    
                          The names of the digital lines or ports on which to detect falling edges. 
                         Required: true 
                         Default: "Dev1/port0/line0:2" 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Change Detection}.timeout number 
                    
                          How long to wait in seconds before generating a timeout error.  Make sure this number is greater than your sampling rate * number of samples per channel being read. 
                         Required: true 
                         Default: 5 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Software Timed} object 
                    
                          The acquisition task sampling properties. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Software Timed}.strategy enum (string) 
                    
                          Specifies that this is a Software Timed sampling definition. 
                         Required: true 
                         Default: "Software Timed" 
                         Enum Items: "Software Timed" 
                     
                 
                
                
                     options.acquisition.sampling::{Software Timed}.samplePeriod integer 
                    
                          The period specified in milliseconds with which to sample data. 
                         Required: true 
                         Default: 1000 
                        
                     
                 
                
                
                     options.acquisition.sampling::{Software Timed}.timeout number 
                    
                          How long to wait in seconds before generating a timeout error.  Make sure this number is greater than your sampling rate * number of samples per channel being read. 
                         Required: true 
                         Default: 5 
                        
                     
                 
                
                
                     options.acquisition.buffer object 
                    
                          The acquisition task buffer properties. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.buffer.force boolean 
                    
                          Whether to force the specified buffer size here.  If false, the 'samplesPerChannel' setting in the 'sampling' section implicitly determines the buffer size.  While generally not a concern, if necessary see NI documentation for further details as the precise nature of this detail may change over time. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.buffer.size integer 
                    
                          If 'force' is true, this specifies the size of the buffer to use.  Most application simply allow DAQmx to choose an appropriate buffer size based on the specified 'samplesPerChannel' setting in the 'sampling' section. 
                         Required: true 
                         Default: 1000 
                        
                     
                 
                
                
                     options.acquisition.triggering object 
                    
                          The acquisition task triggering properties.  Note that there are two classes of triggering: Start and Reference.  The primary difference between these two modes of triggering is Reference triggers will keep a specified number of pretrigger points.  All of the trigger `types` apply to both classes with one exception: the `Time` type only applies to the Start trigger class.  The other trigger types are: Digital Edge, Digital Pattern, Analog Edge, Analog Multi Edge, Analog Window 
                         Required: true 
                         Default: {
    "enable": false,
    "class": "Start",
    "type": "Digital Edge",
    "parameters": {
        "source": "/Dev1/PFI0",
        "edge": "Rising"
    }
}  
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Edge} object 
                    
                          An object defining a Digital Edge start trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Edge}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Edge}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Start" 
                         Enum Items: "Start" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Edge}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Digital Edge" 
                         Enum Items: "Digital Edge" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Edge}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Edge}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Edge}.parameters.edge enum (string) 
                    
                          The digital edge on which to trigger the acquisition. 
                         Required: true 
                         Default: "Rising" 
                         Enum Items: "Rising" | "Falling" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern} object 
                    
                          An object defining a Digital Pattern start trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Start" 
                         Enum Items: "Start" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Digital Pattern" 
                         Enum Items: "Digital Pattern" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern}.parameters.triggerWhen enum (string) 
                    
                          Determines whether a match vs a non-match to the specified pattern will trigger the acquisition. 
                         Required: true 
                         Default: "Pattern Matches" 
                         Enum Items: "Pattern Matches" | "Pattern Does Not Match" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Digital Pattern}.parameters.pattern string 
                    
                          The pattern on which to trigger the signal, to be used in combination with the triggerWhen option.  For digital pattern triggering, you configure the device to detect a specific digital pattern on specific physical channels. After detecting this condition, the device performs the action associated with the trigger, such as starting the task or marking which sample was acquired when the trigger occurred. The digital pattern is specified using the following characters: 
X: ignore the physical channel. 
0: Match on a logic low level on the physical channel. 
1: Match on a logic high level on the physical channel. 
R: Match on rising edge on the physical channel.
E: Match on either rising or falling edge on the physical channel. 
F: Match on falling edge on the physical channel. 
For instance, if you specify a pattern of 'X11100' and a source of 'dev1/line0:4,dev1/line6' the pattern match occurs when physical channels 'dev1/line1' 'dev1/line2' and 'dev1/line3' are logic high and when physical channels 'dev1/line4' and 'dev1/line6' are logic low. 'dev1/line0' is ignored.  As another example (source specified as a port) if you specify a pattern of '11000000' and a source of 'dev1/port0' the pattern match occurs when physical channels 'dev1/line0' and 'dev1/line1' are logic high and the other six lines are logic low. 
                         Required: true 
                         Default: "" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge} object 
                    
                          An object defining a Analog Edge start trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Start" 
                         Enum Items: "Start" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Analog Edge" 
                         Enum Items: "Analog Edge" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge}.parameters.slope enum (string) 
                    
                          The analog edge on which to trigger the acquisition. 
                         Required: true 
                         Default: "Rising" 
                         Enum Items: "Rising" | "Falling" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Edge}.parameters.level number 
                    
                          The level or threshold at which to trigger the acquisition. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge} object 
                    
                          Configures the task to start acquiring or generating samples when any of the configured analog signals cross the respective levels you specified. Multi-edge triggering treats the configured triggers as if a logical OR is applied. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Start" 
                         Enum Items: "Start" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Analog Multi Edge" 
                         Enum Items: "Analog Multi Edge" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.parameters.edges array 
                    
                          An array of analog edge trigger definitions, any of which will cause the acquisition to begin. 
                         Required: true 
                        
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.parameters.edges[n] object 
                    
                          Configures the task to start acquiring or generating samples when any of the configured analog signals cross the respective levels you specified. Multi-edge triggering treats the configured triggers as if a logical OR is applied. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.parameters.edges[n].source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.parameters.edges[n].slope enum (string) 
                    
                          The analog edge on which to trigger the acquisition. 
                         Required: true 
                         Default: "Rising" 
                         Enum Items: "Rising" | "Falling" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Multi Edge}.parameters.edges[n].level number 
                    
                          The level or threshold at which to trigger the acquisition when the signal is trending according to the specified slope.  Specify this level in the units of the measurement. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window} object 
                    
                          An object defining a Analog Window start trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Start" 
                         Enum Items: "Start" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Analog Window" 
                         Enum Items: "Analog Window" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.parameters.windowTop number 
                    
                          The top level or threshold of the trigger window. 
                         Required: true 
                         Default: 5 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.parameters.windowBottom number 
                    
                          The bottom level or threshold of the trigger window. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Analog Window}.parameters.triggerWhen enum (string) 
                    
                          Determines whether the trigger occurs when entering the window or when leaving the window. 
                         Required: true 
                         Default: "Entering Window" 
                         Enum Items: "Entering Window" | "Leaving Window" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Time} object 
                    
                          An object defining a Time start trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Time}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Time}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Start" 
                         Enum Items: "Start" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Time}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Time" 
                         Enum Items: "Time" 
                     
                 
                
                
                     options.acquisition.triggering::{Start, Time}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Start, Time}.parameters.delay number 
                    
                          This is only valid with the Start trigger class.  The duration of time in seconds to wait before triggering the acquisition. 
                         Required: true 
                         Default: "5" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge} object 
                    
                          An object defining a Digital Edge reference trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Reference" 
                         Enum Items: "Reference" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Digital Edge" 
                         Enum Items: "Digital Edge" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge}.parameters.edge enum (string) 
                    
                          The digital edge on which to trigger the acquisition. 
                         Required: true 
                         Default: "Rising" 
                         Enum Items: "Rising" | "Falling" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Edge}.parameters.pretriggerPoints integer 
                    
                          This only applies to Reference trigger types which will acquire data even before triggering in order to keep and return the specified number of pretrigger points. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern} object 
                    
                          An object defining a Digital Pattern reference trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Reference" 
                         Enum Items: "Reference" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Digital Pattern" 
                         Enum Items: "Digital Pattern" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.parameters.triggerWhen enum (string) 
                    
                          Determines whether a match vs a non-match to the specified pattern will trigger the acquisition. 
                         Required: true 
                         Default: "Pattern Matches" 
                         Enum Items: "Pattern Matches" | "Pattern Does Not Match" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.parameters.pattern string 
                    
                          The pattern on which to trigger the signal, to be used in combination with the triggerWhen option.  For digital pattern triggering, you configure the device to detect a specific digital pattern on specific physical channels. After detecting this condition, the device performs the action associated with the trigger, such as starting the task or marking which sample was acquired when the trigger occurred. The digital pattern is specified using the following characters: 
X: ignore the physical channel. 
0: Match on a logic low level on the physical channel. 
1: Match on a logic high level on the physical channel. 
R: Match on rising edge on the physical channel.
E: Match on either rising or falling edge on the physical channel. 
F: Match on falling edge on the physical channel. 
For instance, if you specify a pattern of 'X11100' and a source of 'dev1/line0:4,dev1/line6' the pattern match occurs when physical channels 'dev1/line1' 'dev1/line2' and 'dev1/line3' are logic high and when physical channels 'dev1/line4' and 'dev1/line6' are logic low. 'dev1/line0' is ignored.  As another example (source specified as a port) if you specify a pattern of '11000000' and a source of 'dev1/port0' the pattern match occurs when physical channels 'dev1/line0' and 'dev1/line1' are logic high and the other six lines are logic low. 
                         Required: true 
                         Default: "" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Digital Pattern}.parameters.pretriggerPoints integer 
                    
                          This only applies to Reference trigger types which will acquire data even before triggering in order to keep and return the specified number of pretrigger points. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge} object 
                    
                          An object defining a Analog Edge reference trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Reference" 
                         Enum Items: "Reference" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Analog Edge" 
                         Enum Items: "Analog Edge" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.parameters.slope enum (string) 
                    
                          The analog edge on which to trigger the acquisition. 
                         Required: true 
                         Default: "Rising" 
                         Enum Items: "Rising" | "Falling" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.parameters.level number 
                    
                          The level or threshold at which to trigger the acquisition. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Edge}.parameters.pretriggerPoints integer 
                    
                          This only applies to Reference trigger types which will acquire data even before triggering in order to keep and return the specified number of pretrigger points. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge} object 
                    
                          An object defining a Analog Multi Edge reference trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.enable boolean 
                    
                          Whether to enable triggering. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Reference" 
                         Enum Items: "Reference" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Analog Multi Edge" 
                         Enum Items: "Analog Multi Edge" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.parameters.edges array 
                    
                          An array of analog edge trigger definitions, any of which will cause the acquisition to begin. 
                         Required: false 
                        
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.parameters.edges[n] object 
                    
                          Configures the task to start acquiring or generating samples when any of the configured analog signals cross the respective levels you specified. Multi-edge triggering treats the configured triggers as if a logical OR is applied. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.parameters.edges[n].source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.parameters.edges[n].slope enum (string) 
                    
                          The analog edge on which to trigger the acquisition. 
                         Required: true 
                         Default: "Rising" 
                         Enum Items: "Rising" | "Falling" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.parameters.edges[n].level number 
                    
                          The level or threshold at which to trigger the acquisition when the signal is trending according to the specified slope.  Specify this level in the units of the measurement. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Multi Edge}.parameters.pretriggerPoints integer 
                    
                          This only applies to Reference trigger types which will acquire data even before triggering in order to keep and return the specified number of pretrigger points. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window} object 
                    
                          An object defining a Analog Window reference trigger. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.enable boolean 
                    
                          undefined 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.class enum (string) 
                    
                          The class of triggering to use. 
                         Required: true 
                         Default: "Reference" 
                         Enum Items: "Reference" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.type enum (string) 
                    
                          The type of triggering to use. 
                         Required: true 
                         Default: "Analog Window" 
                         Enum Items: "Analog Window" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.parameters object 
                    
                          An object containing configuration parameters for triggering. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.parameters.source string 
                    
                          The input / pin to which the trigger signal is connected. 
                         Required: true 
                         Default: "/Dev1/PFI0" 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.parameters.windowTop number 
                    
                          The top level or threshold of the trigger window. 
                         Required: true 
                         Default: 5 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.parameters.windowBottom number 
                    
                          The bottom level or threshold of the trigger window. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.parameters.triggerWhen enum (string) 
                    
                          Determines whether the trigger occurs when entering the window or when leaving the window. 
                         Required: true 
                         Default: "Entering Window" 
                         Enum Items: "Entering Window" | "Leaving Window" 
                     
                 
                
                
                     options.acquisition.triggering::{Reference, Analog Window}.parameters.pretriggerPoints integer 
                    
                          This only applies to Reference trigger types which will acquire data even before triggering in order to keep and return the specified number of pretrigger points. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     options.acquisition.logging object 
                    
                          The acquisition task logging properties.  The following variables are available for use here: @VAR{instanceName}, @VAR{timestamp}, @VAR{readSamplesPerChannel} 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.acquisition.logging.fileOperation enum (string) 
                    
                          The open/create/replace operation to perform on files generated. 
                         Required: true 
                         Default: "Create or Replace" 
                         Enum Items: "Open" | "Open or Create" | "Create or Replace" | "Create" 
                     
                 
                
                
                     options.acquisition.logging.filePath string 
                    
                          The file path at which to generate the data file.  Symbolic paths are allowed here (see framework documentation for details). 
                         Required: true 
                         Default: "C:\\JADE_TDMS_Data\\VoltageData.tdms" 
                        
                     
                 
                
                
                     options.acquisition.logging.mode enum (string) 
                    
                          "Off" means do not log, "Log" means log to file only (no data will be displayed, and DMA transfers will performantly transfer data to disk without bringing data into application memory), and "Log and Read" means both log to file and read data into application memory for display. 
                         Required: true 
                         Default: "Log and Read" 
                         Enum Items: "Off" | "Log" | "Log and Read" 
                     
                 
                
                
                     options.acquisition.logging.enforceMaxSamplesPerFile boolean 
                    
                          Whether to generate new files after the specified maxSamplesPerFile, or to simply store all samples in the initial file. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     options.acquisition.logging.maxSamplesPerFile integer 
                    
                          This only applies if enforceMaxSamplesPerFile is true. The maximum number of samples to store in a given file. New files will be generated if this threshold is reached.  New files are created with the naming convention of _####.tdms, where #### starts at 0001 and increments automatically with each new file. For example, if the file specified is C:\MyData\data.tdms, the next file name used is C:\MyData\data_0001.tdms. 
                         Required: true 
                         Default: 1000000 
                        
                     
                 
                
                
                     options.publishing object 
                    
                          An object defining if and how the plugin publishes data. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.publishing.enable boolean 
                    
                          Whether to enable publishing. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                
                
                
                
                     options.logger object 
                    
                          Defines the standard logger for this plugin.  Note that a LOG variable space is provided here, as well as the VAR variable space.  Available variables are: @LOG{LOGGERNAME}, @LOG{TIMESTAMP}, @LOG{LOGMESSAGE}, @LOG{ERRORMESSAGE}, @VAR{instanceName}, @VAR{readSamplesPerChannel}, @VAR{timestamp} are available variables.  Note: @LOG{LOGGERNAME} is equal to the @VAR{instanceName} here. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     options.logger.Enable boolean 
                    
                          Whether to enable the logger. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     options.logger.LogFolder string 
                    
                          The folder in which to write log files. 
                         Required: true 
                         Default: "\\JADE_LOGS\\@VAR{instanceName}" 
                        
                     
                 
                
                
                
                
                     options.logger.ErrorsOnly boolean 
                    
                          Whether to log only errors. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     options.logger.DiskThrashPeriod integer 
                    
                          The period in milliseconds with which to flush the file buffer to ensure it's committed to the hard drive.  Note: This is a performance consideration to prevent writing to disk too frequently. 
                         Required: true 
                         Default: 1000 
                        
                     
                 
                
                
                     options.logger.FileSizeLimit integer 
                    
                          The file size at which to create new files. 
                         Required: true 
                         Default: 1000000 
                        
                     
                 
                
                
                
                
                
                
                     options.logger.LogEntryFormat string 
                    
                          The format to use when writing log entries when errors are not present. 
                         Required: true 
                         Default: "\n\n@LOG{LOGMESSAGE}" 
                        
                     
                 
                
                
                     options.logger.ErrorLogEntryFormat string 
                    
                          The message format used to construct error log entries. 
                         Required: true 
                         Default: "\n\n@LOG{ERRORMESSAGE}" 
                        
                     
                 
                
                
                
                
                     panel object 
                    
                           
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     panel.open boolean 
                    
                          Whether to open the front panel immediately when run. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     panel.state enum (string) 
                    
                          The state in which the window will open. 
                         Required: true 
                         Default: "Standard" 
                         Enum Items: "Standard" | "Hidden" | "Closed" | "Minimized" | "Maximized" 
                     
                 
                
                
                     panel.transparency integer 
                    
                          The transparency of the window. 0 = opaque, 100 = invisible. 
                         Required: true 
                         Default: 0 
                        
                     
                 
                
                
                     panel.title string 
                    
                          The title of the plugin window when it runs.  Note that the variable 'instanceName' is provided here in a VAR variable container. 
                         Required: true 
                         Default: "@VAR{instanceName}" 
                        
                     
                 
                
                
                     panel.titleBarVisible boolean 
                    
                          Whether the window title bar is visible. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                
                
                
                
                     panel.makeActive boolean 
                    
                          Whether the window becomes active when opened. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     panel.bringToFront boolean 
                    
                          Whether the window is brought to the front / top of other windows when opened. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     panel.minimizable boolean 
                    
                          Whether the window is minimizable. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     panel.resizable boolean 
                    
                          Whether the window is resizable. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     panel.closeable boolean 
                    
                          Whether the window is closeable. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     panel.closeWhenDone boolean 
                    
                          Whether to close the window when complete. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     panel.center boolean 
                    
                          Whether to center the window when opened.  Note: this property overrides the 'position' property. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     panel.position object 
                    
                          The position of the window when opened the first time. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     panel.position.top integer 
                    
                          The vertical position of the window in pixels from the top edge of the viewport.  Note: this property is overriden by the 'center' property. 
                         Required: true 
                         Default: 100 
                        
                     
                 
                
                
                     panel.position.left integer 
                    
                          The horizontal position of the window in pixels from the left edge of the viewport.  Note: this property is overriden by the 'center' property. 
                         Required: true 
                         Default: 100 
                        
                     
                 
                
                
                     panel.size object 
                    
                          The size of the window when opened the first time. 
                         Required: false 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     panel.size.width integer 
                    
                          The width of the window in pixels.  -1 means use the default width for the panel.  Note that depending on panel features exposed, there may be a limit to how small a panel can become. 
                         Required: true 
                         Default: -1 
                        
                     
                 
                
                
                     panel.size.height integer 
                    
                          The height of the window in pixels.  -1 means use the default height for the panel.  Note that depending on panel features exposed, there may be a limit to how small a panel can become. 
                         Required: true 
                         Default: -1 
                        
                     
                 
                
                
                     channel object 
                    
                          The communication channel definition used by this plugin. Note: this section rarely needs modifications. In many cases, the underlying plugin implementation depends on at least some of these settings having the values below. Consult with a JADE expert before making changes to this section if you are unfamiliar with the implications of changes to this section. 
                         Required: true 
                         Default: (not specified; see any element defaults within) 
                        
                     
                 
                
                
                     channel.SendBreakTimeout integer 
                    
                          The timeout duration in milliseconds to wait for sending messages. 
                         Required: true 
                         Default: 1000 
                        
                     
                 
                
                
                     channel.WaitOnBreakTimeout integer 
                    
                          The timeout duration in milliseconds to wait for receiving messages.  Note: -1 means wait indefinitely or until shutdown is signalled. 
                         Required: true 
                         Default: -1 
                        
                     
                 
                
                
                     channel.WaitOnShutdownTimeout integer 
                    
                          The timeout duration in milliseconds to wait for shutdown acknowledgment. 
                         Required: true 
                         Default: 2000 
                        
                     
                 
                
                
                     channel.ThrowTimeoutErrors boolean 
                    
                          Whether to throw timeout errors vs simply returning a boolean indicating whether a timeout occurred. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     channel.ThrowShutdownUnacknowledgedErrors boolean 
                    
                          Whether to throw 'shutdown unacknowledged' errors. 
                         Required: true 
                         Default: true 
                        
                     
                 
                
                
                     channel.QueueSize integer 
                    
                          The size of the underlying communication queue in bytes.  Note: -1 means unbounded (i.e. grow as needed with available memory). 
                         Required: true 
                         Default: 100 
                        
                     
                 
                
                
                     channel.SendBreakEnqueueType enum (string) 
                    
                          The enqueue strategy employed on the underlying queue for standard messages. 
                         Required: true 
                         Default: "LossyEnqueue" 
                         Enum Items: "Enqueue" | "EnqueueAtFront" | "LossyEnqueue" | "LossyEnqueueAtFront" 
                     
                 
                
                
                     channel.SendErrorEnqueueType enum (string) 
                    
                          The enqueue strategy employed on the underlying queue for error messages. 
                         Required: true 
                         Default: "LossyEnqueue" 
                         Enum Items: "Enqueue" | "EnqueueAtFront" | "LossyEnqueue" | "LossyEnqueueAtFront" 
                     
                 
                
                
                     channel.SendShutdownEnqueueType enum (string) 
                    
                          The enqueue strategy employed on the underlying queue for the shutdown message. 
                         Required: true 
                         Default: "LossyEnqueueAtFront" 
                         Enum Items: "Enqueue" | "EnqueueAtFront" | "LossyEnqueue" | "LossyEnqueueAtFront" 
                     
                 
                
                
                     channel.FlushQueueBeforeWaitingOnBreak boolean 
                    
                          Whether to flush the queue upon waiting for new messages (i.e. whether to clear the queue and wait for the next 'new' message; this has the effect of removing old messages and waiting for the next message. 
                         Required: true 
                         Default: false 
                        
                     
                 
                
                
                     channel.FlushQueueAfterBreaking boolean 
                    
                          Whether to flush the queue after receiving a new message (i.e. whether to handle the next message coming in the queue and then flush; this has the effect of handling the oldest message (if it exsits) or the next message before flushing the queue. 
                         Required: true 
                         Default: false