public class DicomContextGroup @interface LTDicomContextGroup : NSObject public ref class DicomContextGroup When the return value of a method of the DicomContextGroupTable class is a DicomContextGroup object, none of the properties DicomContextIdentifierType, Name, and ContextGroupVersion can be null.
using Leadtools;using Leadtools.Dicom;public void InsertContextGroup(){DicomDateTimeValue version = new DicomDateTimeValue();version.Year = 2004;version.Month = 3;version.Day = 22;version.Hours = 0;version.Minutes = 0;version.Seconds = 0;version.Fractions = 0;version.Offset = 0;// Insert a (testing) Context GroupDicomContextGroup group = DicomContextGroupTable.Instance.Insert("CID XXXX", "New Context Group", true, version, DicomContextGroupTableInsertFlags.None);if (group == null){return;}// Fill the Context Group with some (testing) Coded ConceptsDicomContextGroupTable.Instance.InsertCodedConcept(group, "CSD1", null, "CV1", "CM1", DicomDateTimeValue.Empty, null, DicomContextGroupTableInsertFlags.None);DicomContextGroupTable.Instance.InsertCodedConcept(group, "CSD2", null, "CV2", "CM2", DicomDateTimeValue.Empty, null, DicomContextGroupTableInsertFlags.None);DicomContextGroupTable.Instance.InsertCodedConcept(group, "CSD3", null, "CV3", "CM3", DicomDateTimeValue.Empty, null, DicomContextGroupTableInsertFlags.None);EnumCodedConcepts(group);// Delete the Context GroupDicomContextGroupTable.Instance.Delete(group);}void DisplayCodedConcept(DicomCodedConcept concept){DicomContextGroup group = DicomContextGroupTable.Instance.GetContextGroup(concept);StringBuilder title = new StringBuilder();StringBuilder msg = new StringBuilder();title.AppendFormat("Coded Concept ({0} '{1}')", group.ContextIdentifier, group.ContextIdentifierValue);msg.AppendFormat("Coding Scheme Designator: {0}{1}Coding Scheme Version: {2}{1}Code Value:{3}{1}Code Meaning: {4}",concept.CodingSchemeDesignator,Environment.NewLine,concept.CodingSchemeVersion != null ? concept.CodingSchemeVersion : "N/A",concept.CodeValue,concept.CodeMeaning);Console.WriteLine($"{title.ToString()}: {msg.ToString()}");}void EnumCodedConcepts(DicomContextGroup group){// Enumerate the Coded Concepts in the Context Group (3 possible ways)// One possible way to enumerate the Coded ConceptsDicomCodedConcept concept = DicomContextGroupTable.Instance.GetFirstCodedConcept(group);while (concept != null){DisplayCodedConcept(concept);concept = DicomContextGroupTable.Instance.GetNextCodedConcept(concept);}// This code is commented out on purpose, it shows two other ways of// enumerating the Coded Concepts/*// Another way to enumerate the Coded Conceptsfor (int i = 0; i < DicomContextGroupTable.Instance.GetCodedConceptCount(group); i++){concept = DicomContextGroupTable.Instance.FindCodedConceptByIndex(group, i);DisplayCodedConcept(concept);}// A third way to enumerate the Coded Conceptsconcept = DicomContextGroupTable.Instance.GetLastCodedConcept(group);while (concept != null){DisplayCodedConcept(concept);concept = DicomContextGroupTable.Instance.GetPreviousCodedConcept(concept);}*/}void EnumContextGroups(){DicomContextGroupTable.Instance.Reset();// Load all the Context GroupsDicomContextGroupTable.Instance.Load(null);// Enumerate them (3 possible ways)// One possible way to enumerate the Context GroupsDicomContextGroup group = DicomContextGroupTable.Instance.GetFirst();while (group != null){StringBuilder msg = new StringBuilder();msg.AppendFormat("{0}{2}{1}{2}{2}Enumerate Coded Concepts?",group.ContextIdentifier,group.Name,Environment.NewLine);Console.WriteLine($"Context Group: {msg}");EnumCodedConcepts(group);group = DicomContextGroupTable.Instance.GetNext(group);}// This code is commented out on purpose, it shows two other ways of// enumerating Context Groups/*// Another way to enumerate the Context Groupsfor (int i = 0; i < DicomContextGroupTable.Instance.Count; i++){group = DicomContextGroupTable.Instance.FindIndex(i);msg.AppendFormat("{0}{2}{1}{2}{2}Enumerate Coded Concepts?",group.ContextIdentifier,group.Name,Environment.NewLine);DialogResult result = MessageBox.Show(msg.ToString(), "Context Group", MessageBoxButtons.YesNoCancel);if(result == DialogResult.Yes){EnumCodedConcepts(group);}else if (result == DialogResult.Cancel){break;}}// A third way to enumerate the Context Groupsgroup = DicomContextGroupTable.Instance.GetLast();while (group != null){msg.AppendFormat("{0}{2}{1}{2}{2}Enumerate Coded Concepts?",group.ContextIdentifier,group.Name,Environment.NewLine);DialogResult result = MessageBox.Show(msg.ToString(), "Context Group", MessageBoxButtons.YesNoCancel);if (result == DialogResult.Yes){EnumCodedConcepts(group);}else if (result == DialogResult.Cancel){break;}group = group = DicomContextGroupTable.Instance.GetPrev(group);}*/}void ModifyContextGroup(){DicomContextGroupTable.Instance.Reset();DicomContextGroupTable.Instance.Load(null);DicomContextGroup group = null;DicomCodedConcept concept = null;// Look for a Context Groupgroup = DicomContextGroupTable.Instance.Find(DicomContextIdentifierType.CID6019);if (group == null){return;}// Look for a Coded Concept in the Context Groupconcept = DicomContextGroupTable.Instance.FindCodedConcept(group, "SRT", "F-01781");if (concept == null){return;}// Set the Code Meaning of the Coded Concept (French translation)if (DicomContextGroupTable.Instance.SetCodeMeaning(concept, "Situé à 1 heure") == false){return;}DisplayCodedConcept(concept);// Delete the Coded ConceptDicomContextGroupTable.Instance.DeleteCodedConcept(concept);// Add a (testing) Coded Concept to the Context Groupconcept = DicomContextGroupTable.Instance.InsertCodedConcept(group,"CSD",null,"CV","CM",DicomDateTimeValue.Empty,null,DicomContextGroupTableInsertFlags.None);if (concept == null){return;}DisplayCodedConcept(concept);// Restore the Context Group (discard all the changes made to the Group)DicomContextGroupTable.Instance.Default(group);EnumCodedConcepts(group);// Delete the Context GroupDicomContextGroupTable.Instance.Delete(group);}
Insert(String,String,Boolean,DicomDateTimeValue,DicomContextGroupTableInsertFlags) Method
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
