public override void Execute() { NHapi.Base.NormativeDatabase.Instance.OpenNewConnection(ConnectionString); Console.WriteLine("Using Database:{0}", NHapi.Base.NormativeDatabase.Instance.Connection.ConnectionString); Console.WriteLine("Base Path:{0}", BasePath); switch (MessageTypeToBuild) { case MessageType.All: SourceGenerator.makeAll(BasePath, Version); break; case MessageType.EventMapping: SourceGenerator.MakeEventMapping(BasePath, Version); break; case MessageType.Segment: SegmentGenerator.makeAll(BasePath, Version); break; case MessageType.Message: MessageGenerator.makeAll(BasePath, Version); break; } }
public void Execute() { if (!string.IsNullOrEmpty(ConnectionString)) { ConfigurationSettings.ConnectionString = ConnectionString; } Console.WriteLine("Using Database:{0}", NormativeDatabase.Instance.Connection.ConnectionString); Console.WriteLine("Base Path:{0}", BasePath); switch (MessageTypeToBuild) { case MessageType.All: SourceGenerator.MakeAll(BasePath, Version); break; case MessageType.EventMapping: SourceGenerator.MakeEventMapping(BasePath, Version); break; case MessageType.Segment: SegmentGenerator.MakeAll(BasePath, Version); break; case MessageType.Message: MessageGenerator.MakeAll(BasePath, Version); break; case MessageType.DataType: DataTypeGenerator.MakeAll(BasePath, Version); break; } }
/// <summary> /// /////////////////////////////////////////////////////////////////////////////// /// </summary> void Awake() { if (instance == null) { instance = this; } }
private IEnumerator MakeSegment(SegmentData d) { if (p.minSubdivisions - d.subdivision <= 0) { var mf = gameObject.AddComponent <MeshFilter>(); mr = gameObject.AddComponent <MeshRenderer>(); if (p.generateColliders) { mc = gameObject.AddComponent <MeshCollider>(); } if (Application.isPlaying || p.editorSubdivisions - d.subdivision != 0) { mr.enabled = false; mr.enabled = false; } mr.receiveShadows = false; if (Application.isPlaying) { yield return(StartCoroutine(SegmentGenerator.Generate(d, mf, mc))); } else { IEnumerator e = SegmentGenerator.Generate(d, mf, mc); while (e.MoveNext()) { ; } } mr.sharedMaterial = p.mainMaterial; } }
private IEnumerator MakeSphere() { busy = true; if (planet.waterSphere != null && planet.waterHeight > 0f) { water = Instantiate(planet.waterSphere); water.parent = transform; water.localPosition = Vector3.zero; water.localRotation = Quaternion.identity; water.localScale = new Vector3(1f, 1f, 1f) * (planet.radius + planet.waterHeight) / 1000f; if (simpleView) { water.gameObject.hideFlags = HideFlags.HideInHierarchy; } water.GetComponent <Renderer>().material = planet.waterMaterial; } for (var i = 0; i < 6; i++) { var sd = new SegmentData(); sd.planet = planet; sd.topLeft = PTHelpers.cubeSides[i][0]; sd.topRight = PTHelpers.cubeSides[i][1]; sd.bottomLeft = PTHelpers.cubeSides[i][2]; sd.bottomRight = PTHelpers.cubeSides[i][3]; sd.uvMin = Vector2.zero; sd.uvMax = new Vector2(1f, 1f); if (!Application.isPlaying) { var t = SegmentGenerator.GenerateTexture(sd); byte[] bytes = t.EncodeToPNG(); File.WriteAllBytes(Application.dataPath + "/../Planet" + i.ToString() + ".png", bytes); t.Apply(); sd.texture = t; materials.heightTexture = t; } var go = new GameObject(); var tr = go.GetComponent <Transform>(); tr.parent = transform; tr.localPosition = Vector3.zero; tr.localRotation = Quaternion.identity; tr.localScale = new Vector3(1f, 1f, 1f); var seg = go.AddComponent <PlanetTerrainSegment>(); segments.Add(seg); if (Application.isPlaying) { yield return(StartCoroutine(seg.Generate(sd))); } else { IEnumerator e = seg.Generate(sd); while (e.MoveNext()) { ; } } seg.Enable(); } busy = false; }
void Awake() { if (instance == null) { instance = this; } else { Destroy(this); } segmentList = new List <Segment>(); }
void Awake() { if (instance == null) { instance = this; } else { Destroy(this); } segmentList = new List <Segment>(); lastUsed = new Stack <string>(); }
public void makeAll_SegmentsCreated_SegmentDefinitionGiven() { // Arrange var baseFolder = GetBaseFolder(); var version = GetVersion(); ConfigurationSettings.XmlFilename = "Mocks\\reverse-nHapi.xml"; var messageTargetFolder = GetTargetFolder("Message"); var groupTargetFolder = GetTargetFolder("Group"); // Act SegmentGenerator.makeAll(baseFolder, version); // Assert // TODO }
public void makeAll_SegmentMSHCreated_SegmentDefinitionGiven() { // Arrange var baseFolder = GetBaseFolder(); var version = GetVersion(); var source = new SegmentProviderMock(); var targetFolder = GetTargetFolder("Segment"); var segment = new SegmentDefinitionContainerMock(); segment.Description = "Message Header"; source.Segments["MSH"] = segment; int fieldCount = 1; AddField(segment.Elements, fieldCount++, "ST", "R", 1, 1, 0, "Field Separator"); AddField(segment.Elements, fieldCount++, "ST", "R", 1, 4, 0, "Encoding Characters"); AddField(segment.Elements, fieldCount++, "HD", "O", 1, 227, 0, "Sending Application"); AddField(segment.Elements, fieldCount++, "HD", "O", 1, 227, 0, "Sending Facility"); AddField(segment.Elements, fieldCount++, "HD", "O", 1, 227, 0, "Receiving Application"); AddField(segment.Elements, fieldCount++, "HD", "O", 1, 227, 0, "Receiving Facility"); AddField(segment.Elements, fieldCount++, "TS", "R", 1, 26, 0, "Date/Time Of Message"); AddField(segment.Elements, fieldCount++, "ST", "O", 1, 40, 0, "Security"); AddField(segment.Elements, fieldCount++, "MSG", "R", 1, 15, 0, "Message Type"); AddField(segment.Elements, fieldCount++, "ST", "R", 1, 20, 0, "Message Control ID"); AddField(segment.Elements, fieldCount++, "PT", "R", 1, 3, 0, "Processing ID"); AddField(segment.Elements, fieldCount++, "VID", "R", 1, 60, 0, "Version ID"); AddField(segment.Elements, fieldCount++, "NM", "O", 1, 15, 0, "Sequence Number"); AddField(segment.Elements, fieldCount++, "ST", "O", 1, 180, 0, "Continuation Pointer"); AddField(segment.Elements, fieldCount++, "ID", "O", 1, 2, 155, "Accept Acknowledgment Type"); AddField(segment.Elements, fieldCount++, "ID", "O", 1, 2, 155, "Application Acknowledgment Type"); AddField(segment.Elements, fieldCount++, "ID", "O", 1, 3, 399, "Country Code"); AddField(segment.Elements, fieldCount++, "ID", "O", 0, 16, 211, "Character Set"); AddField(segment.Elements, fieldCount++, "CE", "O", 1, 250, 0, "Principal Language Of Message"); AddField(segment.Elements, fieldCount++, "ID", "O", 1, 20, 356, "Alternate Character Set Handling Scheme"); AddField(segment.Elements, fieldCount++, "EI", "O", 0, 427, 0, "Message Profile Identifier"); DataProviderFactory.Instance.SetProvider(source); // Act SegmentGenerator.makeAll(baseFolder, version); // Assert Assert.IsTrue(File.Exists($"{targetFolder}MSH.cs")); }
public async Task MakeAll_GeneratesAllSegments(string version) { // Arrange var results = new ConcurrentDictionary <string, string>(); FileAbstraction.UsingImplementation((filePath, bytes) => { results.TryAdd(filePath, Encoding.UTF8.GetString(bytes)); }); ConfigurationSettings.ConnectionString = this.Configuration.GetConnectionString("Hl7Database"); // Act SegmentGenerator.MakeAll("basepath", version); // Assert Assert.IsNotEmpty(results); await Verifier.Verify(results) .UseTextForParameters(version.Replace(".", string.Empty)); }
/// <summary> Queries the normative database for a list of segments comprising /// the message structure. The returned list may also contain strings /// that denote repetition and optionality. Choice indicators (i.e. begin choice, /// next choice, end choice) for alternative segments are ignored, so that the class /// structure allows all choices. The matter of enforcing that only a single choice is /// populated can't be handled by the class structure, and should be handled elsewhere. /// </summary> public SegmentDef[] GetSegments(string message, string version) { /*String sql = "select HL7Segments.seg_code, repetitional, optional, description " + * "from (HL7MsgStructIDSegments inner join HL7Segments on HL7MsgStructIDSegments.seg_code = HL7Segments.seg_code " + * "and HL7MsgStructIDSegments.version_id = HL7Segments.version_id) " + * "where HL7Segments.version_id = 6 and message_structure = '" + message + "' order by seq_no";*/ String sql = getSegmentListQuery(message, version); //System.out.println(sql.toString()); SegmentDef[] segments = new SegmentDef[200]; //presumably there won't be more than 200 OleDbConnection conn = NormativeDatabase.Instance.Connection; OleDbCommand stmt = SupportClass.TransactionManager.manager.CreateStatement(conn); OleDbCommand temp_OleDbCommand; temp_OleDbCommand = stmt; temp_OleDbCommand.CommandText = sql; OleDbDataReader rs = temp_OleDbCommand.ExecuteReader(); int c = -1; while (rs.Read()) { String name = SegmentGenerator.altSegName(Convert.ToString(rs[1 - 1])); bool repeating = rs.GetBoolean(2 - 1); bool optional = rs.GetBoolean(3 - 1); String desc = Convert.ToString(rs[4 - 1]); String groupName = Convert.ToString(rs[6 - 1]); //ignore the "choice" directives ... the message class structure has to include all choices ... // if this is enforced (i.e. exception thrown if >1 choice populated) this will have to be done separately. if (!(name.Equals("<") || name.Equals("|") || name.Equals(">"))) { c++; segments[c] = new SegmentDef(name, groupName, !optional, repeating, desc); } } rs.Close(); SegmentDef[] ret = new SegmentDef[c + 1]; Array.Copy(segments, 0, ret, 0, c + 1); return(ret); }
public float GetHeight(Vector3 v) { return(SegmentGenerator.GetHeight(v, planet.radius, planet.displacementLayers)); }
protected override void Initialize() { // TODO: Add your initialization logic here var_Game = this; var_InputHandler = new InputHandler(this); var_SpriteBatch = new SpriteBatch(GraphicsDevice); var_GameCamera = new GameCamera(this); var_PlayerShip = new PlayerShip(this, Vector3.Zero, var_GameCamera); var_Director = new NewDirector(this, ChallengeLevel.Normal); var_SegmentGenerator = new SegmentGenerator(var_Game, ChallengeLevel.Normal, var_GameCamera, var_Director ); var_Tunnel = new Tunnel(this); var_UI = new UI(this, var_SpriteBatch, var_PlayerShip.var_Health, var_PlayerShip.var_Bomb_Count); AssignSubscribers(); base.Initialize(); }