90 lines
2.8 KiB
C#
90 lines
2.8 KiB
C#
using Newtonsoft.Json;
|
|
using System;
|
|
using System.IO;
|
|
|
|
namespace VisionCommon {
|
|
public class FovPatternInfo : PatternInfo, ICloneable {
|
|
[JsonIgnore]
|
|
public FovPatternIndex PatternIndex { get; set; }
|
|
|
|
public override string GetPatternDirectoryPath() {
|
|
return PatternIndex.GetPatternDirectoryPath();
|
|
}
|
|
|
|
public override string GetSubPatternDirectoryPath() {
|
|
return PatternIndex.GetSubPatternDirectoryPath();
|
|
}
|
|
|
|
public override object Clone() {
|
|
return new FovPatternInfo() {
|
|
PatternType = PatternType,
|
|
PatternName = PatternName,
|
|
IsActivated = IsActivated,
|
|
Description = Description,
|
|
IsQuickFind = IsQuickFind,
|
|
LightInfo = LightInfo.Clone(),
|
|
PatternIndex = PatternIndex.Clone() as FovPatternIndex,
|
|
MilSystemId = MilSystemId,
|
|
PreProcParam = PreProcParam.Clone(),
|
|
FixtureSetting = FixtureSetting.Clone() as FixtureSetting,
|
|
};
|
|
}
|
|
|
|
public override PatternIndex GetPatternIndex() {
|
|
return PatternIndex;
|
|
}
|
|
|
|
public override string GetFullId() {
|
|
return ToString();
|
|
}
|
|
|
|
public override string ToString() {
|
|
return PatternIndex.ToString();
|
|
}
|
|
|
|
public override string GetPrefix() {
|
|
return PatternIndex.GetPrefix();
|
|
}
|
|
|
|
public override string GetPatternIdPrefix() {
|
|
return PatternIndex.GetPatternIdPrefix();
|
|
}
|
|
|
|
public override int GetPatternId() {
|
|
return PatternIndex.PatternId;
|
|
}
|
|
public override void SetPatternId(int patternId) {
|
|
PatternIndex.PatternId = patternId;
|
|
}
|
|
|
|
public override int GetPatternSubId() {
|
|
return PatternIndex.PatternSubId;
|
|
}
|
|
public override void SetPatternSubId(int patternSubId) {
|
|
PatternIndex.PatternSubId = patternSubId;
|
|
}
|
|
|
|
public override bool IsMainPattern(string idPrefix) {
|
|
return GetFullId().StartsWith(idPrefix) &&
|
|
PatternIndex.PatternSubId == PatternConstants.MAIN_PATTERN_INDEX;
|
|
}
|
|
|
|
public override bool IsSubPattern(string idPrefix) {
|
|
return GetFullId().StartsWith(idPrefix) &&
|
|
PatternIndex.PatternSubId != PatternConstants.MAIN_PATTERN_INDEX;
|
|
}
|
|
|
|
public override bool Equals(object obj) {
|
|
if (this.GetType() != obj.GetType()) {
|
|
return false;
|
|
}
|
|
|
|
return PatternIndex.Equals(((FovPatternInfo)obj).PatternIndex);
|
|
}
|
|
|
|
public override int GetHashCode() {
|
|
return PatternIndex.GetHashCode();
|
|
}
|
|
}
|
|
}
|