]> jspc29.x-matter.uni-frankfurt.de Git - daqtools.git/commitdiff
Update CTS GUI for larger delay settings
authorJan Michel <j.michel@gsi.de>
Mon, 15 Jun 2020 14:48:15 +0000 (16:48 +0200)
committerJan Michel <j.michel@gsi.de>
Mon, 15 Jun 2020 14:48:15 +0000 (16:48 +0200)
web/CtsPlugins/CtsMod10.pm

index 43f7063bcc70c144d5ba229f9e61ddef08806716..232d829236a454ae40feb01b99e29d32df48f828 100755 (executable)
@@ -19,25 +19,46 @@ sub init {
    my $prop = $self->{'_properties'};
 
    my $header = $self->{'_cts'}{'_enum'}{0x10}->read();
-   
+   my $cprop = $self->{'_cts'}{'_properties'};
+
 # registers
-   for(my $i = 0; $i < $header->{'len'}; $i++) {
-      my $key = "trg_input_config$i";
-      
-      $regs->{$key} = new TrbRegister($address + 1 + $i, $trb, {
-         'delay'     => {'lower' =>  0, 'len' => 4},
-         'spike_rej' => {'lower' =>  4, 'len' => 4},
-         'invert'    => {'lower' =>  8, 'len' => 1, 'type' => 'bool'},
-         'override'  => {'lower' =>  9, 'len' => 2, 'type' => 'enum', 'enum' => 
-            {0 => 'off', 1 => 'to_low', 3 => 'to_high'}
-         }
-      }, {
-         'accessmode' => "rw",
-         'export'     => 1,
-         'monitor' => '1',
-         'label' => "Trigger Input Module Configuration $i"
-      });
-   }
+   if ($cprop->{'trb_compiletime'} < 1592219121) {
+    for(my $i = 0; $i < $header->{'len'}; $i++) {
+        my $key = "trg_input_config$i";
+        
+        $regs->{$key} = new TrbRegister($address + 1 + $i, $trb, {
+          'delay'     => {'lower' =>  0, 'len' => 4},
+          'spike_rej' => {'lower' =>  4, 'len' => 4},
+          'invert'    => {'lower' =>  8, 'len' => 1, 'type' => 'bool'},
+          'override'  => {'lower' =>  9, 'len' => 2, 'type' => 'enum', 'enum' => 
+              {0 => 'off', 1 => 'to_low', 3 => 'to_high'}
+          }
+        }, {
+          'accessmode' => "rw",
+          'export'     => 1,
+          'monitor' => '1',
+          'label' => "Trigger Input Module Configuration $i"
+        });
+    }
+  } else {
+    for(my $i = 0; $i < $header->{'len'}; $i++) {
+        my $key = "trg_input_config$i";
+        
+        $regs->{$key} = new TrbRegister($address + 1 + $i, $trb, {
+          'delay'     => {'lower' =>  0, 'len' => 6},
+          'spike_rej' => {'lower' =>  8, 'len' => 4},
+          'invert'    => {'lower' =>  12, 'len' => 1, 'type' => 'bool'},
+          'override'  => {'lower' =>  13, 'len' => 2, 'type' => 'enum', 'enum' => 
+              {0 => 'off', 1 => 'to_low', 3 => 'to_high'}
+          }
+        }, {
+          'accessmode' => "rw",
+          'export'     => 1,
+          'monitor' => '1',
+          'label' => "Trigger Input Module Configuration $i"
+        });
+    }
+  }
 
    for(my $i = 0; $i < $header->{'itc_len'}; $i++) {
       if ($self->{'_cts'}->getProperties->{'itc_assignments'}[$i + $header->{'itc_base'}] eq 'unconnected') {
@@ -51,4 +72,4 @@ sub init {
 
 }
 
-1;
\ No newline at end of file
+1;