NodePrsnt.cs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. using System;
  2. using Uestc.Auto6.Dso.ComModel;
  3. namespace Uestc.Auto6.Dso.Core.Vsa
  4. {
  5. public abstract class DspNodePrsnt
  6. {
  7. private protected readonly DspNode _Model;
  8. internal virtual DspNode Model => _Model;
  9. public VectorAnalysisPrsnt Presenter
  10. {
  11. get;
  12. }
  13. internal DspNodePrsnt(VectorAnalysisPrsnt vap, DspNode node)
  14. {
  15. Presenter = vap;
  16. _Model = node;
  17. }
  18. public VsaNodeTypeOpt NodeType => Model.NodeType;
  19. }
  20. public class NoOpNodePrsnt : DspNodePrsnt
  21. {
  22. internal override NoOpNode Model => (NoOpNode)_Model;
  23. internal NoOpNodePrsnt(VectorAnalysisPrsnt vap, DspNode node) : base(vap, node)
  24. { }
  25. }
  26. public class MixerNodePrsnt : DspNodePrsnt
  27. {
  28. internal override MixerNode Model => (MixerNode)_Model;
  29. internal MixerNodePrsnt(VectorAnalysisPrsnt vap, MixerNode node) : base(vap, node)
  30. { }
  31. public Double SuggestedFreq
  32. {
  33. get => Model.SuggestedFreq;
  34. set => Model.SuggestedFreq = value;
  35. }
  36. public Double MaxSuggestedFreq => Model.MaxSuggestedFreq;
  37. public Double MinSuggestedFreq => Model.MinSuggestedFreq;
  38. }
  39. public class CarrierEstNodePrsnt : DspNodePrsnt
  40. {
  41. internal override CarrierEstNode Model => (CarrierEstNode)_Model;
  42. internal CarrierEstNodePrsnt(VectorAnalysisPrsnt vap, CarrierEstNode node) : base(vap, node)
  43. { }
  44. }
  45. public class PhaseEstNodePrsnt : DspNodePrsnt
  46. {
  47. internal override PhaseEstNode Model => (PhaseEstNode)_Model;
  48. internal PhaseEstNodePrsnt(VectorAnalysisPrsnt vap, PhaseEstNode node) : base(vap, node)
  49. { }
  50. public VsaPhaseEstOpt PhaseEst
  51. {
  52. get => Model.PhaseEst;
  53. set => Model.PhaseEst = value;
  54. }
  55. public Int32 SymLength
  56. {
  57. get => Model.SymLength;
  58. set => Model.SymLength = value;
  59. }
  60. public Int32 MaxSymLength => Model.MaxSymLength;
  61. public Int32 MinSymLength => Model.MinSymLength;
  62. }
  63. public class CustomNodePrsnt : DspNodePrsnt
  64. {
  65. internal override CustomNode Model => (CustomNode)_Model;
  66. internal CustomNodePrsnt(VectorAnalysisPrsnt vap, CustomNode node) : base(vap, node)
  67. { }
  68. public String Code
  69. {
  70. get => Model.Code;
  71. set => Model.Code = value;
  72. }
  73. }
  74. public class DCBlockNodePrsnt : DspNodePrsnt
  75. {
  76. internal override DCBlockNode Model => (DCBlockNode)_Model;
  77. internal DCBlockNodePrsnt(VectorAnalysisPrsnt vap, DCBlockNode node) : base(vap, node)
  78. { }
  79. public Boolean IsAnalogDCBlock
  80. {
  81. get => Model.IsAnalogDCBlock;
  82. set => Model.IsAnalogDCBlock = value;
  83. }
  84. }
  85. public class EqualizerNodePrsnt : DspNodePrsnt
  86. {
  87. internal override EqualizerNode Model => (EqualizerNode)_Model;
  88. internal EqualizerNodePrsnt(VectorAnalysisPrsnt vap, EqualizerNode node) : base(vap, node)
  89. { }
  90. public Double Gradient
  91. {
  92. get => Model.Gradient;
  93. set => Model.Gradient = value;
  94. }
  95. public Double MaxGradient => Model.MaxGradient;
  96. public Double MinGradient => Model.MinGradient;
  97. public Int32 SymLength
  98. {
  99. get => Model.SymLength;
  100. set => Model.SymLength = value;
  101. }
  102. public Int32 MaxSymLength => Model.MaxSymLength;
  103. public Int32 MinSymLength => Model.MinSymLength;
  104. public Int32 TapLength
  105. {
  106. get => Model.TapLength;
  107. set => Model.TapLength = value;
  108. }
  109. public Int32 MaxTapLength => Model.MaxTapLength;
  110. public Int32 MinTapLength => Model.MinTapLength;
  111. }
  112. public class FilterNodePrsnt : DspNodePrsnt
  113. {
  114. internal override FilterNode Model => (FilterNode)_Model;
  115. internal FilterNodePrsnt(VectorAnalysisPrsnt vap, FilterNode node) : base(vap, node)
  116. { }
  117. public Double Bandwidth
  118. {
  119. get => Model.Bandwidth;
  120. set => Model.Bandwidth = value;
  121. }
  122. public Double MaxBandwidth => Model.MaxBandwidth;
  123. public Double MinBandwidth => Model.MinBandwidth;
  124. public Double CenterFreq
  125. {
  126. get => Model.CenterFreq;
  127. set => Model.CenterFreq = value;
  128. }
  129. public Double MaxCenterFreq => Model.MaxCenterFreq;
  130. public Double MinCenterFreq => Model.MinCenterFreq;
  131. public Int32 Order
  132. {
  133. get => Model.Order;
  134. set => Model.Order = value;
  135. }
  136. public Int32 MaxOrder => Model.MaxOrder;
  137. public Int32 MinOrder => Model.MinOrder;
  138. public Double RolloffFactor
  139. {
  140. get => Model.RolloffFactor;
  141. set => Model.RolloffFactor = value;
  142. }
  143. public Double MaxRolloffFactor => Model.MaxRolloffFactor;
  144. public Double MinRolloffFactor => Model.MinRolloffFactor;
  145. public VsaFilterTypeOpt Type
  146. {
  147. get => Model.Type;
  148. set => Model.Type = value;
  149. }
  150. }
  151. }