←Select platform

Copy(DicomDataSet,DicomElement,DicomElement) Method

Summary
Copies the data elements from one Data Set to another.
Syntax
C#
Objective-C
C++/CLI
Java
- (BOOL)copyElementsInDataSet:(LTDicomDataSet *)dataSet destinationElement:(nullable LTDicomElement *)dst sourceElement:(nullable LTDicomElement *)src error:(NSError **)error; 
public final void copy(DicomDataSet dataSet, DicomElement destination, DicomElement source) 

Parameters

dataSet
The Data Set to be copied (the source Data Set).

destination
A data element within the destination Data Set. A copy of the source Data Set will be inserted as the child of this data element.

source
A data element within the source Data Set. All children, grandchildren, etc., of this element will be added to the destination Data Set.

Remarks

If both source and destination are null, the source Data Set will be inserted at the root level of the destination Data Set. Therefore the highest level elements of the source Data Set will be added as siblings to the highest level elements of the destination Data Set. This can be seen in the diagram below.

copynn.gif

If source is not null and destination is null, the children of source will be added at the root level of the destination Data Set (i.e., as siblings to elements at the highest level). This can be seen in the diagram below. Note that the source elements to be added are in blue.

copysn.gif

If source is null and destination is not null, the entire source Data Set will be added as children to destination. This can be seen in the diagram below.

copynd.gif

If source and destination are both not null, then the children of source are added as the children of destination. This can be seen in the diagram below. The original children of destination are in red and the source elements to be added are in blue.

copysd.gif

If an inserted element has the same tag value as a destination element at the same level and with the same parent, then the value from the source element is copied into the destination element and any child elements are added accordingly. For example, the diagram below shows the result of a call to Copy. If the two elements indicated by the arrows have the same tag value, the value from the source element is copied into the destination element and the structure on the right results. This is shown by the red outline of the destination element with the blue center of the source element.

copysda.gif

To make the destination Data Set an exact copy of the source Data Set, instead of inserting it within the destination Data Set, you must call Reset on the destination Data Set, before calling Copy.

Example
C#
using Leadtools; 
using Leadtools.Dicom; 
 
 
public void TestCommandSet() 
{ 
   //Make sure to initialize the DICOM engine, this needs to be done only once  
   //In the whole application 
   DicomEngine.Startup(); 
   using (DicomDataSet ds = new DicomDataSet()) 
   { 
      ds.InitializeCommandSet(DicomCommandType.CFind, true); 
      Debug.Assert(ds.InformationCommand == DicomCommandType.CFind); 
      Debug.Assert(ds.IsRequestCommand == true); 
      using (DicomDataSet ds1 = new DicomDataSet()) 
      { 
         ds1.Copy(ds, null, null); 
      } 
   } 
   DicomEngine.Shutdown(); 
} 
Requirements

Target Platforms

Help Version 23.0.2024.8.20
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Dicom Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.