Sets the attributes of the "Presentation State Module".
public void SetPresentationStateInformation(
Leadtools.Dicom.DicomPresentationStateInformation presentationStateInformation
)
Public Sub SetPresentationStateInformation( _
ByVal presentationStateInformation As Leadtools.Dicom.DicomPresentationStateInformation _
)
public void SetPresentationStateInformation(
Leadtools.Dicom.DicomPresentationStateInformation presentationStateInformation
)
public void setPresentationStateInformation(DicomPresentationStateInformation presentationStateInformation)
function Leadtools.Dicom.DicomDataSet.SetPresentationStateInformation(
presentationStateInformation
)
public:
void SetPresentationStateInformation(
Leadtools.Dicom.DicomPresentationStateInformation^ presentationStateInformation
)
presentationStateInformation
"Presentation State Module" attributes
This method will set the attributes of the "Presentation State Module".
This example will initialize a new DICOM dataset and update its presentation state information.
using Leadtools;
using Leadtools.Dicom;
public void DicomPresStateSample()
{
//Make sure to initialize the DICOM engine, this needs to be done only once
//In the whole application
DicomEngine.Startup();
using (DicomDataSet dicomDataset = new DicomDataSet())
{
dicomDataset.Initialize(DicomClassType.GrayscaleSoftcopyPresentationState, DicomDataSetInitializeType.ExplicitVRLittleEndian);
DicomPresentationStateInformation presentationStateInfo = new DicomPresentationStateInformation();
presentationStateInfo.InstanceNumber = 1;
presentationStateInfo.PresentationLabel = "LABEL";
presentationStateInfo.PresentationDescription = "Description";
presentationStateInfo.PresentationCreator = "Creator";
DicomDateValue presentationCreationDate = new DicomDateValue();
presentationCreationDate.Year = 2004;
presentationCreationDate.Month = 1;
presentationCreationDate.Day = 8;
DicomTimeValue presentationCreationTime = new DicomTimeValue();
presentationCreationTime.Hours = 2;
presentationCreationTime.Minutes = 3;
presentationCreationTime.Seconds = 5;
presentationStateInfo.PresentationCreationDate = presentationCreationDate;
presentationStateInfo.PresentationCreationTime = presentationCreationTime;
dicomDataset.SetPresentationStateInformation(presentationStateInfo);
DicomPresentationStateInformation presentationStateInfo1 = dicomDataset.GetPresentationStateInformation();
Debug.Assert(presentationStateInfo1 != null);
Debug.Assert(presentationStateInfo1.InstanceNumber == 1);
//RemovePresStateImageRefBySOPInstance can be used to remove indivual referened images
dicomDataset.RemoveAllPresentationStateImageReferences();
Debug.Assert(dicomDataset.GetPresentationStateImageReferenceCount(null) == 0);
// We can also load the dataset first and then call AddPresStateImageRefByDS
dicomDataset.AddPresentationStateImageReference(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm"), null, 0);
// We can also add the presentation state using a stream
using (FileStream stream = new FileStream(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm"), FileMode.Open))
{
dicomDataset.AddPresentationStateImageReference(stream, null, 0);
}
//We can also use FindNextPresStateRefSeriesItem to iterate through all items
DicomElement item = dicomDataset.FindFirstPresentationStateReferencedSeriesItem();
string imageRefSOPInstanceUID = dicomDataset.GetPresentationStateImageReferenceSOPInstance(item, 0);
Debug.Assert(imageRefSOPInstanceUID != null);
DicomElement item1 = dicomDataset.GetPresentationStateImageReference(imageRefSOPInstanceUID);
Debug.Assert(item1 != null);
dicomDataset.Save(Path.Combine(LEAD_VARS.ImagesDir, "PresentationState.dcm"), DicomDataSetSaveFlags.None);
}
DicomEngine.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Imports Leadtools
Imports Leadtools.Dicom
<TestMethod>
Public Sub DicomPresStateSample()
'Make sure to initialize the DICOM engine, this needs to be done only once
'In the whole application
DicomEngine.Startup()
Using dicomDataset As New DicomDataSet()
dicomDataset.Initialize(DicomClassType.GrayscaleSoftcopyPresentationState, DicomDataSetInitializeType.ExplicitVRLittleEndian)
Dim presentationStateInfo As New DicomPresentationStateInformation()
presentationStateInfo.InstanceNumber = 1
presentationStateInfo.PresentationLabel = "LABEL"
presentationStateInfo.PresentationDescription = "Description"
presentationStateInfo.PresentationCreator = "Creator"
Dim presentationCreationDate As New DicomDateValue()
presentationCreationDate.Year = 2004
presentationCreationDate.Month = 1
presentationCreationDate.Day = 8
Dim presentationCreationTime As New DicomTimeValue()
presentationCreationTime.Hours = 2
presentationCreationTime.Minutes = 3
presentationCreationTime.Seconds = 5
presentationStateInfo.PresentationCreationDate = presentationCreationDate
presentationStateInfo.PresentationCreationTime = presentationCreationTime
dicomDataset.SetPresentationStateInformation(presentationStateInfo)
Dim presentationStateInfo1 As DicomPresentationStateInformation = dicomDataset.GetPresentationStateInformation()
Debug.Assert(presentationStateInfo1 IsNot Nothing)
Debug.Assert(presentationStateInfo1.InstanceNumber = 1)
'RemovePresStateImageRefBySOPInstance can be used to remove indivual referened images
dicomDataset.RemoveAllPresentationStateImageReferences()
Debug.Assert(dicomDataset.GetPresentationStateImageReferenceCount(Nothing) = 0)
' We can also load the dataset first and then call AddPresStateImageRefByDS
dicomDataset.AddPresentationStateImageReference(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm"), Nothing, 0)
' We can also add the presentation state using a stream
Using stream As New FileStream(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm"), FileMode.Open)
dicomDataset.AddPresentationStateImageReference(stream, Nothing, 0)
End Using
'We can also use FindNextPresStateRefSeriesItem to iterate through all items
Dim item As DicomElement = dicomDataset.FindFirstPresentationStateReferencedSeriesItem()
Dim imageRefSOPInstanceUID As String = dicomDataset.GetPresentationStateImageReferenceSOPInstance(item, 0)
Debug.Assert(imageRefSOPInstanceUID IsNot Nothing)
Dim item1 As DicomElement = dicomDataset.GetPresentationStateImageReference(imageRefSOPInstanceUID)
Debug.Assert(item1 IsNot Nothing)
dicomDataset.Save(Path.Combine(LEAD_VARS.ImagesDir, "PresentationState.dcm"), DicomDataSetSaveFlags.None)
End Using
DicomEngine.Shutdown()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Dicom;
using Leadtools.Examples;
public void DicomPresStateSample(Stream dicomStream, Stream outputStream)
{
//Make sure to initialize the DICOM engine, this needs to be done only once
//In the whole application
DicomEngine.Startup();
using (DicomDataSet dicomDataset = new DicomDataSet())
{
dicomDataset.Initialize(DicomClassType.GrayscaleSoftcopyPresentationState, DicomDataSetInitializeType.ExplicitVRLittleEndian);
DicomPresentationStateInformation presentationStateInfo = new DicomPresentationStateInformation();
presentationStateInfo.InstanceNumber = 1;
presentationStateInfo.PresentationLabel = "Label";
presentationStateInfo.PresentationDescription = "Description";
presentationStateInfo.PresentationCreator = "Creator";
DicomDateValue presentationCreationDate = new DicomDateValue();
presentationCreationDate.Year = 2004;
presentationCreationDate.Month = 1;
presentationCreationDate.Day = 8;
DicomTimeValue presentationCreationTime = new DicomTimeValue();
presentationCreationTime.Hours = 2;
presentationCreationTime.Minutes = 3;
presentationCreationTime.Seconds = 5;
presentationStateInfo.PresentationCreationDate = presentationCreationDate;
presentationStateInfo.PresentationCreationTime = presentationCreationTime;
dicomDataset.SetPresentationStateInformation(presentationStateInfo);
DicomPresentationStateInformation presentationStateInfo1 = dicomDataset.GetPresentationStateInformation();
Debug.Assert(presentationStateInfo1 != null);
Debug.Assert(presentationStateInfo1.InstanceNumber == 1);
//RemovePresStateImageRefBySOPInstance can be used to remove indivual referened images
dicomDataset.RemoveAllPresentationStateImageReferences();
Debug.Assert(dicomDataset.GetPresentationStateImageReferenceCount(null) == 0);
// We can also load the dataset first and then call AddPresStateImageRefByDS
dicomDataset.AddPresentationStateImageReference(dicomStream, null, 0);
//We can also use FindNextPresStateRefSeriesItem to itertate throgh all items
DicomElement item = dicomDataset.FindFirstPresentationStateReferencedSeriesItem();
string imageRefSOPInstanceUID = dicomDataset.GetPresentationStateImageReferenceSOPInstance(item, 0);
Debug.Assert(imageRefSOPInstanceUID != null);
DicomElement item1 = dicomDataset.GetPresentationStateImageReference(imageRefSOPInstanceUID);
Debug.Assert(item1 != null);
dicomDataset.Save(outputStream, DicomDataSetSaveFlags.None);
}
DicomEngine.Shutdown();
}
Imports Leadtools
Imports Leadtools.Dicom
Public Sub DicomPresStateSample(ByVal dicomStream As Stream, ByVal outputStream As Stream)
'Make sure to initialize the DICOM engine, this needs to be done only once
'In the whole application
DicomEngine.Startup()
Using dicomDataset As DicomDataSet = New DicomDataSet()
dicomDataset.Initialize(DicomClassType.GrayscaleSoftcopyPresentationState, DicomDataSetInitializeType.ExplicitVRLittleEndian)
Dim presentationStateInfo As DicomPresentationStateInformation = New DicomPresentationStateInformation()
presentationStateInfo.InstanceNumber = 1
presentationStateInfo.PresentationLabel = "Label"
presentationStateInfo.PresentationDescription = "Description"
presentationStateInfo.PresentationCreator = "Creator"
Dim presentationCreationDate As DicomDateValue = New DicomDateValue()
presentationCreationDate.Year = 2004
presentationCreationDate.Month = 1
presentationCreationDate.Day = 8
Dim presentationCreationTime As DicomTimeValue = New DicomTimeValue()
presentationCreationTime.Hours = 2
presentationCreationTime.Minutes = 3
presentationCreationTime.Seconds = 5
presentationStateInfo.PresentationCreationDate = presentationCreationDate
presentationStateInfo.PresentationCreationTime = presentationCreationTime
dicomDataset.SetPresentationStateInformation(presentationStateInfo)
Dim presentationStateInfo1 As DicomPresentationStateInformation = dicomDataset.GetPresentationStateInformation()
Debug.Assert(Not presentationStateInfo1 Is Nothing)
Debug.Assert(presentationStateInfo1.InstanceNumber = 1)
'RemovePresStateImageRefBySOPInstance can be used to remove indivual referened images
dicomDataset.RemoveAllPresentationStateImageReferences()
Debug.Assert(dicomDataset.GetPresentationStateImageReferenceCount(Nothing) = 0)
' We can also load the dataset first and then call AddPresStateImageRefByDS
dicomDataset.AddPresentationStateImageReference(dicomStream, Nothing, 0)
'We can also use FindNextPresStateRefSeriesItem to itertate throgh all items
Dim item As DicomElement = dicomDataset.FindFirstPresentationStateReferencedSeriesItem()
Dim imageRefSOPInstanceUID As String = dicomDataset.GetPresentationStateImageReferenceSOPInstance(item, 0)
Debug.Assert(Not imageRefSOPInstanceUID Is Nothing)
Dim item1 As DicomElement = dicomDataset.GetPresentationStateImageReference(imageRefSOPInstanceUID)
Debug.Assert(Not item1 Is Nothing)
dicomDataset.Save(outputStream, DicomDataSetSaveFlags.None)
End Using
DicomEngine.Shutdown()
End Sub
GetPresentationStateInformation Method
AddPresentationStateImageReference(String,Int32[],Int32) Method
AddPresentationStateImageReference(DicomDataSet,Int32[],Int32) Method
RemovePresentationStateImageReference Method
RemoveAllPresentationStateImageReferences Method
GetPresentationStateImageReferenceSOPInstance Method
GetPresentationStateImageReferenceCount Method
FindFirstPresentationStateReferencedSeriesItem Method
Products |
Support |
Feedback: SetPresentationStateInformation Method - Leadtools.Dicom |
Introduction |
Help Version 19.0.2017.6.16
|
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.