public void Copy(GPIBGroup copyMe)
 {
     GroupName        = "Copy of " + copyMe.GroupName;
     UserGPIBGroup    = copyMe.UserGPIBGroup;
     GroupDescription = copyMe.GroupDescription;
     foreach (int channelID in copyMe.getChannelIDs())
     {
         if (!channelExists(channelID))
         {
             addChannel(channelID);
         }
         ChannelDatas[channelID].Enabled  = copyMe.ChannelDatas[channelID].Enabled;
         ChannelDatas[channelID].DataType = copyMe.ChannelDatas[channelID].DataType;
         if (ChannelDatas[channelID].DataType == GPIBGroupChannelData.GpibChannelDataType.voltage_frequency_waveform)
         {
             ChannelDatas[channelID].volts.DeepCopyWaveform(copyMe.ChannelDatas[channelID].volts);
             ChannelDatas[channelID].frequency.DeepCopyWaveform(copyMe.ChannelDatas[channelID].frequency);
         }
         else if (ChannelDatas[channelID].DataType == GPIBGroupChannelData.GpibChannelDataType.raw_string)
         {
             ChannelDatas[channelID].RawString = copyMe.ChannelDatas[channelID].RawString;
         }
         else if (ChannelDatas[channelID].DataType == GPIBGroupChannelData.GpibChannelDataType.string_param_string)
         {
             List <StringParameterString> parameters = new List <StringParameterString>();
             foreach (StringParameterString param in copyMe.ChannelDatas[channelID].StringParameterStrings)
             {
                 parameters.Add(param);
             }
             ChannelDatas[channelID].StringParameterStrings = parameters;
         }
     }
 }
 /// <summary>
 /// Outputs a single gpib group. (evaluated at the beginning of the group.)
 /// </summary>
 /// <param name="gpibGroup"></param>
 /// <param name="settings"></param>
 /// <returns></returns>
 public abstract bool outputGPIBGroup(GPIBGroup gpibGroup, SettingsData settings);
 private static bool CompareGpibGroups(string preString, GPIBGroup a, GPIBGroup b, List <SequenceDifference> ans)
 {
     return(CompareGroups <GPIBGroupChannelData>(preString, a, b, ans, CompareGpibChannelData));
 }
Exemple #4
0
 public ServerActionStatus outputGPIBGroupOnConnectedServers(GPIBGroup gpibGroup, SettingsData settings, EventHandler <MessageEvent> messageLog)
 {
     return(runNamedMethodOnConnectedServers("outputGPIBGroup", new object[] { gpibGroup, settings }, 4000, messageLog));
 }