public DicomIod Find(
DicomIod iod,
DicomModuleType code,
DicomIodType type,
bool tree
)
- (nullable LTDicomIod *)find:(nullable LTDicomIod *)iod module:(LTDicomModuleType)code type:(LTDicomIodType)type tree:(BOOL)tree;
public:
DicomIod^ Find(
DicomIod^ iod,
DicomModuleType code,
DicomIodType type,
bool tree
)
iod
An item in the IOD Structure. The item in the IOD Structure that contains the IOD with the specified code and type will be returned.
code
Code value that specifies the Tag Information Object Definition.
type
The type of Information Object Definition you are working with.
tree
true to evaluate the IOD Structure as a tree, false to evaluate the IOD Structure as a list,
A DicomIod class that contains the IOD with the specified code and type.
using Leadtools;
using Leadtools.Dicom;
public void RecursiveReadIOD(DicomIod parentIOD)
{
DicomIod iod;
if (parentIOD == null)
{
iod = DicomIodTable.Instance.GetFirst(null, true);
}
else
{
iod = DicomIodTable.Instance.GetChild(parentIOD);
}
while (iod != null)
{
// Over here we can show the information about this IOD such as
// DicomIod.Name, DicomIod.Type, DicomIod.Usage and DicomIod.Description
if (DicomIodTable.Instance.GetChild(iod) != null)
{
RecursiveReadIOD(iod);
}
iod = DicomIodTable.Instance.GetNext(iod, true);
}
}
void TestIODTable()
{
//Make sure to initialize the DICOM engine, this needs to be done only once.
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
DicomIodTable.Instance.Reset();
DicomIodTable.Instance.Default();
// We can find the number of modules in any class
int moduleCount = DicomIodTable.Instance.GetModuleCount(DicomClassType.SCImageStorage);
// We can in here call any of the Find methods including FindModule and FindModuleByIndex,
// in this sample we are searching for a DICOM class, this is why we are using FindClass
DicomIod iod = DicomIodTable.Instance.FindClass(DicomClassType.SCImageStorage);
// We can get the name of the IOD
string name = iod.ToString();
DicomIodTable.Instance.Delete(iod);
DicomIod iod1 = DicomIodTable.Instance.Insert(null, false, DicomClassType.SCImageStorage, "Secondary Capture Image Storage", DicomIodType.Class, DicomIodUsageType.MandatoryModule, "Description of the class goes in here");
Debug.Assert(DicomIodTable.Instance.Exists(iod1) == true);
DicomIodTable.Instance.SetName(iod1, "Secondary Capture Image Storage 1");
//Go through all the IODs in the IOD table
RecursiveReadIOD(null);
DicomEngine.Shutdown();
}
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