DicomUidTable Class (original) (raw)
Summary
The DicomUidTable class contains functionality for working with the table, or list (UID Table) of available Unique Identifiers that LEADTOOLS maintains internally.
Syntax
C#
Objective-C
C++/CLI
Java
public class DicomUidTable
@interface LTDicomUidTable : NSObject
public class DicomUidTable
public ref class DicomUidTable
Example
using Leadtools;
using Leadtools.Dicom;
public void TestUIDTable()
{
//Make sure to initialize the DICOM engine, this needs to be done only once
//In the whole application
DicomEngine.Startup();
//We don't need to call this since the DicomEngine.Startup already does that for us
//These calls are for demonstration purposes only
DicomUidTable.Instance.Reset();
DicomUidTable.Instance.Default();
//We can also call FindByIndex if we know the index of this UID
DicomUid uid = DicomUidTable.Instance.Find(DicomUidType.SCImageStorage);
DicomUidTable.Instance.Delete(uid);
DicomUid uid1 = DicomUidTable.Instance.Insert(DicomUidType.SCImageStorage, "Secondary Capture Image Storage", DicomUIDCategory.Class);
Debug.Assert(DicomUidTable.Instance.Exists(uid1) == true);
DicomUidTable.Instance.SetName(uid1, "Secondary Capture Image Storage 1");
int count = 0;
//If we want to loop through all the UIDs in the table we can do this:
uid = DicomUidTable.Instance.GetFirst();
while (uid != null)
{
// We can also access the rest of the properties of DicomUid in here,
// such as DicomUid.Code, DicomUid.Name, DicomUid.Type
if (uid.Code == DicomUidType.SCImageStorage)
{
Console.WriteLine(uid.Name);
}
count++;
uid = DicomUidTable.Instance.GetNext(uid);
}
//We can use GetLast and GetPrevious to achieve the same thing
Debug.Assert(count == DicomUidTable.Instance.GetCount());
DicomEngine.Shutdown();
}