Additional Topics > Medical Imaging in IDL > IDL DICOM Reference > IDLffDicomExStorScu Properties

# IDLffDicomExStorScu Properties

IDLffDicomExStorScu objects have the following properties. Properties with the word “Yes” in the “Get” column of the property table can be retrieved via IDLffDicomExStorScu::GetProperty. Properties with the word “Yes” in the “Init” column of the property table can be set via IDLffDicomExStorScu::Init. Properties with the word “Yes” in the “Set” column in the property table can be set via IDLffDicomExStorScu::SetProperty.

Note: For a discussion of the property description tables shown below, see About Object Property Descriptions. Tables for properties of this object do not include the DICOM Attribute, VR, or Multi-value fields.

Objects of this class have the following properties.

- CALLBACK_DATA
- CALLBACK_FUNCTION
- STORAGE_SCP

### CALLBACK_DATA

This property contains data that is to be passed to the function defined by the CALLBACK_FUNCTION property when a callback is initiated. If this property is not set, the integer value zero is passed to the callback function. See Using Callbacks With the IDLffDicomExStorScu Object for additional details.

This property is used by the IDLffDicomExStorScu::Send method.

Property Type | Any type
Name String | not displayed
Get: Yes | Set: Yes | Init: No | Registered: No

### CALLBACK_FUNCTION

This property contains the name of an IDL function to be called by the Send method. If no value is defined, no callback is initiated. See Using Callbacks With the IDLffDicomExStorScu Object for additional details.

This property is used by the IDLffDicomExStorScu::Send method.

Property Type | String
Name String | not displayed
Get: Yes | Set: Yes | Init: No | Registered: No

### STORAGE_SCP

This property specifies the Application Entity name of the Storage SCP node to which DICOM files will be sent by the Send method. The Application Entity name must be defined in the DICOM Network Services configuration file.

Note: This property must be set prior to calling the Send method.

This property is used by the IDLffDicomExStorScu::Send method.

Property Type | String
Name String | not displayed
Get: Yes | Set: Yes | Init: No | Registered: No

## Using Callbacks With the IDLffDicomExStorScu Object

Callbacks from the IDLffDicomExStorScu object provide a way to transmit information back to the caller based on the status of a send operation. The value returned by the callback function is then used by the IDLffDicomExStorScu object to determine whether the send operation should continue.

The IDLffDicomExStorScu object allows you to define a single function (written in IDL) that will be called based on the intermediate status of a IDLffDicomExStorScu::Send method call. If a callback function is specified via the CALLBACK_FUNCTION property, it is called each time a DICOM file is sent to the remote node.

The callback function is invoked with an array of strings indicating status as the first parameter, and with the value (if any) specified by the CALLBACK_DATA property as the second parameter.

If the return value of the callback function is zero, the send operation will be cancelled. If the return value is one, the send operation will continue.

### Callback Routine Signature

A send callback function is written in IDL and has the following signature:

Function Callback_Function_Name, StatusInfo, CallbackData

where

- Callback_Function_Name is the name of the callback function. This value is specified as the value of the CALLBACK_FUNCTION property.
- StatusInfo is an array of strings that contain status information about the send operation. The status strings are provided for information and human inspection rather than for programmatic processing; the exact strings included in the array will depend on numerous factors including the status of the send and the type of node being sent to.
- CallbackData is the data specified via the CALLBACK_DATA property. The value of this property is passed to the callback function unmodified. If the CALLBACK_DATA property is unspecified, an integer zero is passed to the callback function as the value of this parameter.

The CallbackData parameter is useful for passing static information, such as the widget ID of a widget where the status information is displayed, from the IDLffDicomExStorScu object to the callback routine.

The return value of the callback function should be an integer zero or one. If the return value is zero, the send operation will be cancelled. If the return value is one, the send operation will continue.