DicomObjects.NET.8.48 Documentation
DicomObjects Namespace / DicomDataSet Class / FunctionalGroupDataSet Method / FunctionalGroupDataSet(Keyword,Int32) Method
The Keyword descriptor of the requested dataset
The frame number to which the dataset should apply
Example

In This Topic
    FunctionalGroupDataSet(Keyword,Int32) Method
    In This Topic
    Locate the required functional group within a DicomDataSet
    Syntax
    'Declaration
     
    
    Public Overloads Function FunctionalGroupDataSet( _
       ByVal Macro As Keyword, _
       ByVal Frame As System.Integer _
    ) As DicomDataSet
    public DicomDataSet FunctionalGroupDataSet( 
       Keyword Macro,
       System.int Frame
    )

    Parameters

    Macro
    The Keyword descriptor of the requested dataset
    Frame
    The frame number to which the dataset should apply

    Return Value

    The requested dataset
    Remarks
    The enhanced DICOM multi-frame objects (e.g. enhanced CT and MRI) allow many attributes to be held in functional group macros, which may be either:
    • The same for all frames - in the "Shared Functional Groups Sequence" (5200,9229)
    • Different for different frames - in the "Per-frame Functional Groups Sequence" (5200,9230)
    This method allows the designated dataset to be located, irrespective of which sequence it is in. Note that the Keyword used to identify the functional group is independent of the Keyword of individual attributes within that DataSet.
    Example
    DicomDataSet enhancedDs = new DicomDataSet("Enhanced_Dataset.dcm");
    Keyword macro = Keyword.PixelValueTransformationSequence;
    int frameNumber = 5;
                        
    var functionalGroup = enhancedDs.FunctionalGroupDataSet(macro, frameNumber);
                        
    // Access an attribute inside the functional group, e.g., Rescale Slope (0028,1053)
    if (functionalGroup != null && functionalGroup[Keyword.RescaleSlope].Value != null)
    {
        double slope = Convert.ToDouble(functionalGroup[Keyword.RescaleSlope].Value);   
    }
    Requirements

    Target Platforms: .NET CLR 4.8 or higher

    See Also