public DicomContextGroup Insert(string contextIdentifier,string name,bool isExtensible,DicomDateTimeValue contextGroupVersion,DicomContextGroupTableInsertFlags flags)
- (nullable LTDicomContextGroup *)insert:(NSString *)contextIdentifier name:(NSString *)name extensible:(BOOL)isExtensible contextGroupVersion:(LTDicomDateTimeValue *)contextGroupVersion flags:(LTDicomContextGroupTableInsertFlags)flags NS_SWIFT_NAME(insert(id:name:extensible:contextGroupVersion:flags:)); public:DicomContextGroup^ Insert(String^ contextIdentifier,String^ name,bool isExtensible,DicomDateTimeValue contextGroupVersion,DicomContextGroupTableInsertFlags flags)
contextIdentifier
The Context Identifier (0008,010F) of the new Context Group. For a list of values, refer to Context Identifier Values.
name
The name of the new Context Group.
isExtensible
Indicates whether the new Context Group is Extensible or not. true, The new Context Group is extensible. false, The new Context Group is Non-extensible.
contextGroupVersion
The Context Group Version (0008,0106) of the new Context Group.
flags
Flag that controls the behavior of this method.
DicomContextGroup object that specifies the newly inserted Context Group.
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);}
DicomContextGroupTable Members
[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
