NetReceiveNActionRequest Example for C#
//This example uses the predefined variable “TreeView1” of
type “TreeView” from “.NET Framework”.
//LEADDICOMNet1 is a predefined LEADDicomNet object
//LEADDICOM1 is a DICOM Dataset defined outside this method
private void LEADDICOMNet1_NetReceiveNActionRequest(int
hNet, short nPresentationID, short nMessageID, string pszClass, string
pszInstance, short nAction, int hDS)
{
short nRet = 0;
System.Windows.Forms.TreeNode NewNode = null;
string szReply = null;
string szName = null;
NewNode = new System.Windows.Forms.TreeNode("Command Set - "
+ "N-ACTION-REQUEST");
TreeView1.Nodes.Add(NewNode);
NewNode.EnsureVisible();
NewNode.Nodes.Add("Presentation ID: " + System.Convert.ToString(nPresentationID));
NewNode.Nodes.Add("Message ID: " + System.Convert.ToString(nMessageID));
nRet = LEADDICOM1.FindUID(pszClass);
if (nRet == 0)
{
szName = LEADDICOM1.get_CurrentUID().Name;
NewNode.Nodes.Add("Requested SOP Class: " + szName + " -
" + pszClass);
}
else
NewNode.Nodes.Add("Requested SOP Class: " + pszClass);
NewNode.Nodes.Add("Requested SOP Instance: " + pszInstance);
NewNode.Nodes.Add("Action: " + System.Convert.ToString(nAction));
//this function should perform the action command - this is a function
that you have to write
nRet = PerformActionCommand(pszClass, pszInstance, hDS);
if (nRet != (short)LTDicomKernelLib.DicomErrorCodes.DICOM_SUCCESS)
nRet = (short)LTDNCLib.DicomCommandStatusConstants.COMMAND_STATUS_PROCESSING_FAILURE;
//send a response
LEADDICOMNet1.SendNActionResponse(hNet, nPresentationID, nMessageID, pszClass,
pszInstance, nRet, nAction, hDS);
}