public static void PutInfoSource(this IoBuffer buffer, InfoSource obj) { buffer.PutInt64(0); buffer.PutProtocolVersion(obj.ProtocolVersion); buffer.PutVendorId(obj.VendorId); buffer.PutGuidPrefix(obj.GuidPrefix); }
public static void GetInfoSource(this IoBuffer buffer, ref InfoSource obj) { buffer.GetInt64(); // unused obj.ProtocolVersion = buffer.GetProtocolVersion(); obj.VendorId = buffer.GetVendorId(); obj.GuidPrefix = buffer.GetGuidPrefix(); }
public MainWindowViewModel() { _timer.AutoReset = true; _timer.Enabled = true; _timer.Elapsed += Update; Source.ToObservableChangeSet().ObserveOn(RxApp.MainThreadScheduler).Bind(out _processes).Subscribe(); InfoSource.ToObservableChangeSet().ObserveOn(RxApp.MainThreadScheduler).Bind(out _totalInfo).Subscribe(); for (int i = 0; i < 3; i++) { InfoSource.Add(0); } }
public static void OnPlaceClick(WindowBase w, UIButtonClickEventArgs eventArgs) { try { EditTownInfoPanel ths = EditTownInfoPanel.Instance; if (ths.mInfo != null) { if (!(EditTownPlaceTool.sInstance is EditTownPlaceToolEx)) { EditTownPlaceTool.sInstance = new EditTownPlaceToolEx(); } UIBinInfo mInfo = ths.mInfo; InfoSource mSource = ths.mSource; EditTownPlaceTool.Instance.SetItemToPlace(ths.mInfo, ths.mSource); ths.mTriggerSound = false; try { EditTownTool.CurrentTool = EditTownPlaceTool.Instance; ths.mModel.SetCurrentSelection(mInfo, mSource); } finally { ths.mTriggerSound = true; } if (ths.Visible) { Audio.StartSound("ui_softwindow_close"); } ths.Visible = false; } } catch (Exception e) { Common.Exception("OnPlaceClick", e); } }
public static void GetSubMessage(this IoBuffer buffer, ref SubMessage obj) { buffer.Align(4); int smhPosition = buffer.Position; SubMessageHeader header = buffer.GetSubMessageHeader(); int smStart = buffer.Position; switch (header.SubMessageKind) { // @see 9.4.5.1.1 case SubMessageKind.PAD: Pad smPad = new Pad(); smPad.Header = header; buffer.GetPad(ref smPad); obj = smPad; break; case SubMessageKind.ACKNACK: AckNack smAckNack = new AckNack(); smAckNack.Header = header; buffer.GetAckNack(ref smAckNack); obj = smAckNack; break; case SubMessageKind.HEARTBEAT: Heartbeat smHeartbeat = new Heartbeat(); smHeartbeat.Header = header; buffer.GetHeartbeat(ref smHeartbeat); obj = smHeartbeat; break; case SubMessageKind.GAP: Gap smgap = new Gap(); smgap.Header = header; buffer.GetGap(ref smgap); obj = smgap; break; case SubMessageKind.INFO_TS: InfoTimestamp sminfots = new InfoTimestamp(); sminfots.Header = header; buffer.GetInfoTimestamp(ref sminfots); obj = sminfots; break; case SubMessageKind.INFO_SRC: InfoSource smInfoSource = new InfoSource(); smInfoSource.Header = header; buffer.GetInfoSource(ref smInfoSource); obj = smInfoSource; break; case SubMessageKind.INFO_REPLY_IP4: InfoReplyIp4 smInfoReplyIp4 = new InfoReplyIp4(); smInfoReplyIp4.Header = header; buffer.GetInfoReplyIp4(ref smInfoReplyIp4); obj = smInfoReplyIp4; break; case SubMessageKind.INFO_DST: InfoDestination smInfoDestination = new InfoDestination(); smInfoDestination.Header = header; buffer.GetInfoDestination(ref smInfoDestination); obj = smInfoDestination; break; case SubMessageKind.INFO_REPLY: InfoReply smInfoReply = new InfoReply(); smInfoReply.Header = header; buffer.GetInfoReply(ref smInfoReply); obj = smInfoReply; break; case SubMessageKind.NACK_FRAG: NackFrag smNackFrag = new NackFrag(); smNackFrag.Header = header; buffer.GetNackFrag(ref smNackFrag); obj = smNackFrag; break; case SubMessageKind.HEARTBEAT_FRAG: HeartbeatFrag smHeartbeatFrag = new HeartbeatFrag(); smHeartbeatFrag.Header = header; buffer.GetHeartbeatFrag(ref smHeartbeatFrag); obj = smHeartbeatFrag; break; case SubMessageKind.DATA: Data smdata = new Data(); smdata.Header = header; buffer.GetDataSubMessage(ref smdata); obj = smdata; break; case SubMessageKind.DATA_FRAG: DataFrag smdDataFrag = new DataFrag(); smdDataFrag.Header = header; buffer.GetDataFrag(ref smdDataFrag); obj = smdDataFrag; break; default: throw new NotSupportedException(); break; } int smEnd = buffer.Position; int smLength = smEnd - smStart; if (smLength != header.SubMessageLength && header.SubMessageLength != 0) { log.WarnFormat("SubMessage length differs for {0} != {1} for {2}", smLength, header.SubMessageLength, obj); if (smLength < header.SubMessageLength) { byte[] unknownBytes = new byte[header.SubMessageLength - smLength]; log.DebugFormat("Trying to skip {0} bytes", unknownBytes.Length); buffer.Get(unknownBytes, 0, unknownBytes.Length); } } log.DebugFormat("SubMsg in: {0}", obj); }
private void Log(InfoSource aSource, string aText) { txbDebug.AppendText(string.Format("{0}: {1}\r\n", aSource.ToString(), aText)); }
/// <summary> /// This examples creates a NewsML-G2 News Item as shown in the QuickStart NewsML-G2 Text /// document in this package http://www.iptc.org/std/NewsML-G2/2.15/documentation/IPTC-NewsML-G2-QuickStartGuides_2014.zip /// </summary> private void GenerateQuickStartTextExample1() // Code History: // 2014-03-03 mws { // variables global only to this method XmlNode foundNode = null; // *** create an object for the NewsML-G2 News Item var g2NI = new NewsItemPwrXml(); // * add the GUID and the version number to it g2NI.InitEmptyXMLDoc("urn:newsml:acmenews.com:20131121:US-FINANCE-FED", 3); g2NI.SetRootXmlLang("en-US"); // * add the catalogRefs to it g2NI.AddCatalogRef("http://www.iptc.org/std/catalog/catalog.IPTC-G2-Standards_22.xml"); g2NI.AddCatalogRef("http://catalog.acmenews.com/news/ANM_G2_CODES_2.xml"); // ** add a rightsInfo element as wrapper of properties g2NI.CheckAddNarWrapper1(NarDocXml.PropsWrapping1.RightsInfo); // ** add a copyrightHolder // * create a plain object for the copyrightHolder property var copyrightHolder = new CopyrightHolder(); // * create a placeholder for the copyrightHolder element XmlElement copyrightHolderXe = null; // * add the copyrightHolder property to the rightsInfo wrapper and get the new XML element returned g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.RightsInfo, copyrightHolder, out copyrightHolderXe); // * create a structured object for the copyrightHolder element var copyrightHolderSe = new ConceptStructProp() { Uri = "http://www.acmenews.com/about.html#copyright" }; // * property with a value in the text node var crName = new Name("Acme News and Media LLC"); copyrightHolderSe.Names.Add(crName); // * apply this structure to the already created copyrightHolder element copyrightHolderSe.ApplyToElement(g2NI, copyrightHolderXe); // * property with a value in the text node var copyrightNotice = new CopyrightNotice("(c) 2013 Copyright Acme News and Media LLC"); g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.RightsInfo, copyrightNotice); // ** add an itemMeta element as wrapper of properties g2NI.CheckAddNarWrapper1(NarDocXml.PropsWrapping1.ItemMeta); // ** add a sequence of properties as children of itemMeta // * property using the qcode attribute var itemClass = new ItemClass { qcode = "ninat:text" }; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ItemMeta, itemClass); // * property using the uri attribute var provider = new Provider { uri = "http://www.acmenews.com/about/" }; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ItemMeta, provider); var versionCreated = new VersionCreated("2013-11-21T16:25:32-05:00"); g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ItemMeta, versionCreated); var embargoed = new Embargoed("2013-11-26T12:00:00-05:00"); g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ItemMeta, embargoed); var pubStatus = new PubStatus { qcode = "stat:usable" }; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ItemMeta, pubStatus); // ** add a contentMeta element as wrapper of properties g2NI.CheckAddNarWrapper1(NarDocXml.PropsWrapping1.ContentMeta); // ** add a sequence of properties as children of itemMeta var contentCreated = new ContentCreated("2013-11-21T15:21:06-05:00"); g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, contentCreated); var contentModified = new ContentModified("2013-11-21T16:22:45-05:00"); g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, contentModified); // * a structured property var located = new Located { qcode = "geoloc:NYC" }; XmlElement locatedXe = null; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, located, out locatedXe); var locatedSe = new ConceptStructProp(); locatedSe.Names.Add(new Name("New York, NY")); locatedSe.ApplyToElement(g2NI, locatedXe); var creator = new Creator { uri = "http://www.acmenews.com/staff/mjameson" }; XmlElement creatorXe = null; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, creator, out creatorXe); var creatorSe = new ConceptStructProp(); creatorSe.Names.Add(new Name("Meredith Jameson")); creatorSe.ApplyToElement(g2NI, creatorXe); var infoSource = new InfoSource { qcode = "is:AP" }; XmlElement infoSourceXe = null; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, infoSource, out infoSourceXe); var infoSourceSe = new ConceptStructProp(); infoSourceSe.Names.Add(new Name("Associated Press")); infoSourceSe.ApplyToElement(g2NI, infoSourceXe); var language = new Language { tag = "en-US" }; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, language); var subject = new Subject { qcode = "medtop:04000000" }; XmlElement subjectXe = null; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, subject, out subjectXe); var subjectSe = new ConceptStructProp(); subjectSe.Names.Add(new Name("economy, business and finance")); subjectSe.ApplyToElement(g2NI, subjectXe); // * note: as this is another subject the type definitions of the variables have been removed subject = new Subject { qcode = "medtop:20000350" }; subjectXe = null; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, subject, out subjectXe); subjectSe = new ConceptStructProp(); subjectSe.Names.Add(new Name("central bank")); subjectSe.ApplyToElement(g2NI, subjectXe); subject = new Subject { qcode = "medtop:20000379" }; subjectXe = null; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, subject, out subjectXe); subjectSe = new ConceptStructProp(); subjectSe.Names.Add(new Name("money and monetary policy")); subjectSe.ApplyToElement(g2NI, subjectXe); var slugline = new Slugline("US-Finance-Fed"); g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, slugline); var headline = new Headline("Fed to halt QE to avert \"bubble\""); g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentMeta, headline); // ** add a contentMeta element as wrapper of properties representing the content of the News Item g2NI.CheckAddNarWrapper1(NarDocXml.PropsWrapping1.ContentSet); // ** an inlineXML holds any kind of XML - in its own namespace. var inlineXML = new InlineXML(); XmlElement inlineXmlXe = null; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentSet, inlineXML, out inlineXmlXe); // * the XML content of inlineXML goes into the inner XML of the element inlineXmlXe.InnerXml = "<nitf xmlns='http://iptc.org/std/NITF/2006-10-18/'> <body> <body.head> <hedline> <hl1>Fed to halt QE to avert \"bubble\"</hl1> </hedline> <byline>By Meredith Jameson, <byttl>Staff Reporter</byttl> </byline> </body.head> <body.content> <p>(New York, NY - November 21) Et, sent luptat luptat, commy Nim zzriureet vendreetue modo dolenis ex euisis nosto et lan ullandit lum doloreet vulla. </p> <p>Ugiating ea feugait utat, venim velent nim quis nulluptat num Volorem inci enim dolobor eetuer sendre ercin utpatio dolorpercing. </p> </body.content> </body> </nitf>"; g2NI.AddNarPropertyToWrapper1(NarDocXml.PropsWrapping1.ContentSet, inlineXML); // *** all metadata properties and elements providing the news content have been added // *** Save the serialized XML document g2NI.SaveToFile("QS-Text_1.0-ExampleFull1-generated.xml", true); qsTextEx1Lbl.Text = "Example News Item created."; } // GenerateQuickStartTextExample1
public static InfoSource GetInfoSource(this IoBuffer buffer) { InfoSource obj = new InfoSource(); buffer.GetInfoSource(ref obj); return obj; }