namespace YLErp.QdpModule { public class VolSurfaceInitializerSingleton { public static VolConstructionType VolConstructionType { get { return PS.Config.ErpElement.SkewMapVolConstruction ? VolConstructionType.SkewMap : VolConstructionType.Normal; } } /// /// /// public static IVolSurfaceInitializer GetInitializer(bool fromConstVol) { return PS.Config.ErpElement.SkewMapVolConstruction && !fromConstVol ? _skewMapVolSurfaceInitializer : _normalVolSurfaceInitialzier; } private static readonly IVolSurfaceInitializer _normalVolSurfaceInitialzier, _skewMapVolSurfaceInitializer; static VolSurfaceInitializerSingleton() { _normalVolSurfaceInitialzier = new NormalVolSurfaceInitializer(); _skewMapVolSurfaceInitializer = new SkewMapVolSurfaceInitializer(); } } public enum VolConstructionType { Normal, SkewMap } }