Files
DP44/Common/DTS.Common/.svn/pristine/cb/cb28138e6be7e61a56a8f5dc4759ffa854a7c27c.svn-base
2026-04-17 14:55:32 -04:00

77 lines
3.5 KiB
Plaintext

using DTS.Common.Interface.Channels;
using DTS.Common.Interface.DataRecorders;
using DTS.Common.Interface.Sensors;
using System;
using System.Collections.Generic;
using DTS.Common.Interface.TestSetups.TestSetupsList;
namespace DTS.Common.Interface.Groups.GroupList
{
public interface IGroup : IComparable<IGroup>
{
IGroupDbRecord GetIGroupDbRecord();
int ChannelCount { get; set; }
int Id { get; set; }
string Name { get; set; }
string DisplayName { get; set; }
int? StaticGroupId { get; set; }
string Description { get; set; }
bool Embedded { get; set; }
DateTime LastModified { get; set; }
string LastModifiedBy { get; set; }
/// <summary>
/// returns true if group matches search term
/// false otherwise
/// </summary>
/// <param name="term"></param>
/// <returns></returns>
bool Filter(string term);
int[] IncludedHardware { get; set; }
//holds a list of hardware identified using the old SerialNumber_type id scheme
//I believe this is primarily for import purposes.
string[] IncludedHardwareStringList { get; set; }
bool Save(Channels.IGroupChannel[] groupChannels, bool canUserCommitChannelCodes);
bool Save(Channels.IGroupChannel[] groupChannels, bool canUserCommitChannelCodes, ref List<DTS.Common.Interface.Channels.IGroupChannel> newGroupChannelList);
void ClearGroupChannelSettingCache(long groupId);
Channels.IGroupChannel[] GetAllChannels(bool bEditable, IDictionary<int, ISensorData> sensorLookup,
IDictionary<int, IDASHardware> hardwareLookup, IChannelSetting[] channelDefaults, bool allowSensorPushAndPull = false);
void LoadHardware();
void ConvertToEmbedded(Channels.IGroupChannel[] groupChannels);
void DeterminePositionAndTestObject(Channels.IGroupChannel[] channels);
bool PositionIsMixed { get; set; }
bool PositionIsTextbox { get; set; }
bool PositionIsCombobox { get; set; }
string Position { get; set; }
bool TestObjectIsMixed { get; set; }
string TestObject { get; set; }
int DisplayOrder { get; set; }
ISensorData GetSensor(Channels.IGroupChannel channel, ISensorData sensorData, bool bUseIsoFilter);
void SetSensor(Channels.IGroupChannel channel, ISensorData sensorData);
void WriteXML(ref System.Xml.XmlWriter writer);
IGroup ReadXML(System.Xml.XmlElement node, Dictionary<long, DTS.Common.Interface.Channels.IGroupChannel> channelLookup, List<ISensorData> sensors);
List<Channels.IGroupChannel> GroupChannelList { get; set; }
/// <summary>
/// sets the included hardware property and the _bloaded property
/// </summary>
/// <param name="hardware"></param>
void SetIncludedHardware(int[] hardware);
List<TestSetupParentHelper> AssociatedTestSetups { get; set; }
void SetTestSetupLists();
bool StaticGroupIsEqual();
bool IsDifferentThanStaticGroup { get; set; }
bool TagCompatible(int[] tags);
int[] TagIDs { get; set; }
string GetTagsAsCommaSeparatedString(Classes.Tags.TagsInstance.TagsGetDelegate tagsGet);
string Tags { get; set; }
List<string> AvailableTestObjects { get; set; }
string SelectedTestObjectItem { get; set; }
List<string> AvailablePositions { get; set; }
string SelectedPositionItem { get; set; }
}
}