OVERVIEW: XrayVisionLink DLL

Overview

For those companies that do not want to use the application's command line arguments, Apteryx has a DLL that can be used to automatically bridge from other applications to the various versions of XrayVision or XVLite and their related OEMs.

Select a topic below or scroll down for complete information:

DLL File Information
Entry Points
XrayVision vs. XVLite Function Support

DLL File Information

Filename:

XrayVisionLink.DLL

Compiled Under:

Visual C++ 6.0

Type:

release build

Debug Info:

none

Use MFC DLL Setting:

shared

Processor:

blend

Runtime Lib:

multithreaded

Alignment

8 bytes

Optimization

speed

 

Entry Points

int FAR PASCAL
XVBridgePatient(const char *szFirstName, const char *szLastName, const char *szSSnum, const char *szIDnum, const char *szDOB);

Description:

Bridges the specified patient information over to XVa3.  If XVa3 is not currently running, it is automatically started.  If the patient exists, the patient is automatically opened.  If the patient does not already exist, the user is prompted if the patient should be created.

Parameters:

szFirstName

The patient's first name (max length = 64 bytes; longer values will be truncated)

szLastName

The patient's last name (max length = 64 bytes; longer values will be truncated)

szSSnum

The number or string that is to be used as the patient's social security, cert, SIN or assigned number (max length = 16 bytes; longer values will be truncated)

szIDnum

The number or string that is to be used as the patient's ID number. (max length = 64 bytes; longer values will be truncated)

szDOB

The patient's date-of-birth in any format (i.e. MM/DD/YY, MM/DD/YY, MMMMMM DD, YYYY, etc.).  Note that it is recommended that the month be specified before the day in short formats. (max length = 64 bytes; longer values will be truncated)

Returns:

TRUE

XrayVision was found and launched

FALSE

XrayVision could not be located on the system

 

 

int FAR PASCAL
XVBridgePatientBar(const char *szFirstName, const char *szLastName, const char *szSSnum, const char *szIDnum, const char *szDOB);

Description:

Performs the same operation as XVaBridgePatient() but instead of displaying the XVa3 application, the patient's image bar is displayed on the right-hand edge of the screen (XVa3 is automatically minimized). If the patient does not exist, the patient is NOT created and nothing is displayed.

Parameters:

Same as XVaBridgePatient()

Returns:

Same as XVaBridgePatient()

 

 

int FAR PASCAL
XVBridgePatientBarEx(const char *szFirstName, const char *szLastName, const char *szSSnum, const char *szIDnum, const char *szDOB, const BOOL bCreatePatientIfTheyDoNotExist);

Description:

Performs the same operation as XVaBridgePatient() but instead of displaying the XVa3 application, the patient's image bar is displayed on the right-hand edge of the screen (XVa3 is automatically minimized). If the patient does not exist, the patient is NOT created and nothing is displayed.

Parameters:

Same as XVaBridgePatient()

Same as XVaBridgePatient()

bCreatePatientIfTheyDoNotExist

Indicates if the patient should be created if they do not exist. If FALSE and the patient does not exist, then nothing happens.

Returns:

Same as XVaBridgePatient()

void FAR PASCAL
XVCloseAllPatients(void);

Description:

Called to all currently opened patients. Note that only version 3.12 build 18 and higher support this feature. Note that calling this function does not guarantee that all patients will be closed if the user is currently in a critical process (e.g. acquiring images).

Parameters:

N/A

Returns:

N/A

int FAR PASCAL
XVSupportsFeature(const unsigned long uFeature);

Description:

Can be called to ensure that the version of XrayVision installed on the computer or network supports an indicated feature.

Parameters:

uFeature

Specifies the feature to test.  

0x00000001

Spawned Xray Capture.  This feature indicates that the version of XrayVision supports the XVCaptureXrayImage feature.

0x00000002

Image Invocation.  This feature indicates that the version of XrayVision supports the XVOpenPatientImages feature.

0x00000003

Image Information Retrieval.  This feature indicates that the version of XrayVision supports the XVRetrievePatientImageCounts feature.

0x00000004

Tooth Information Retrieval.  This feature indicates that the version of XrayVision supports the XVRetrieveToothInformation feature.

0x00000005

Close All Patients. This feature indicates that the version of XrayVision supports the XVCloseAllPatients() feature.

Returns:

TRUE

XrayVision supports the indicated feature

FALSE

XrayVision does not support the indicated feature

 

 

int FAR PASCAL
XVCaptureXrayImage(LPCSTR szCallingAppName, LPCSTR szTargetJPEGFilename, LPCSTR szFirstName, LPCSTR szLastName, LPCSTR szSSnum, LPCSTR szIDnum, LPCSTR szDOB);

Description:

Can be called to invoke and wait for a digital x-ray image to be returned from XrayVision for the specified patient.  This image is automatically saved into the XrayVision patient database as well as saved into the filename specified by szTargetJPEGFilename.  Note that this function will not return until the user cancels the image capture in the XrayVision application or an image is actually acquired.  Also note that upon invocation of this function, the file specified by szTargetJPEGFilename is automatically deleted (this file will only exist if the function returns TRUE).

Parameters:

szCallingAppName

Should be a simple name of the calling application.

szTargetJPEGFilename

Specifies the full path and filename (including the extension) of the filename that should be used to save the captured file.  This filename should be a temporary file for it is automatically deleted by this function should the image acquisition fail.

szFirstName

The patient's first name (max length = 64 bytes; longer values will be truncated)

szLastName

The patient's last name (max length = 64 bytes; longer values will be truncated)

szSSnum

The number or string that is to be used as the patient's social security, cert, SIN or assigned number (max length = 16 bytes; longer values will be truncated)

szIDnum

The number or string that is to be used as the patient's ID number. (max length = 64 bytes; longer values will be truncated)

szDOB

The patient's date-of-birth in any format (i.e. MM/DD/YY, MM/DD/YY, MMMMMM DD, YYYY, etc.).  Note that it is recommended that the month be specified before the day in short formats. (max length = 64 bytes; longer values will be truncated)

Returns:

TRUE

An image was successfully captured.

FALSE

The user cancelled the operation or some other error interfered with the x-ray capture (i.e. the patient could not be created).

 

int FAR PASCAL
XVRetrievePatientImageCounts(LPCSTR szFirstName, LPCSTR szLastName, LPCSTR szSSnum, LPCSTR szIDnum, LPCSTR szDOB, PatientImageCountEntry *pCountEntry);

Description:

Can be called to invoke and wait for image information to be returned from XrayVision for the specified patient. If the patient does not exist, the patient is NOT created and the function returns FALSE.

Parameters:

szFirstName

The patient's first name (max length = 64 bytes; longer values will be truncated)

szLastName

The patient's last name (max length = 64 bytes; longer values will be truncated)

szSSnum

The number or string that is to be used as the patient's social security, cert, SIN or assigned number (max length = 16 bytes; longer values will be truncated)

szIDnum

The number or string that is to be used as the patient's ID number. (max length = 64 bytes; longer values will be truncated)

szDOB

The patient's date-of-birth in any format (i.e. MM/DD/YY, MM/DD/YY, MMMMMM DD, YYYY, etc.).  Note that it is recommended that the month be specified before the day in short formats. (max length = 64 bytes; longer values will be truncated)

pCountEntry

Returned image information. This object has the following structure:

struct _PatientImageCountEntry
{
unsigned long cbSize;
char szPatientDirectoryName[1024];
unsigned long arAdultToothImages[32];
unsigned long arDeciduousToothImages[20];
unsigned long uUnassociatedImages;
};

cbSize should be set to the size of the structure.
szPatientDirectoryName will contain the fully qualified path to the patient image subdirectory.
The various image variables contain the number of images associated with each tooth. The first index into the array corresponds to the first tooth number (e.g. #1 or A).

Returns:

TRUE

An image was successfully captured.

FALSE

The patient could not be found or the file could not be created.

 

 

int FAR PASCAL
XVOpenPatientImages(LPCSTR szFirstName, LPCSTR szLastName, LPCSTR szSSnum, LPCSTR szIDnum, LPCSTR szDOB, const unsigned long uAdultTeeth, const unsigned long uDeciduousTeeth, LPCSTR szFilename);

Description:

Can be called to invoke XrayVision and open up the specified image or images.  

Parameters:

szFirstName

The patient's first name (max length = 64 bytes; longer values will be truncated)

szLastName

The patient's last name (max length = 64 bytes; longer values will be truncated)

szSSnum

The number or string that is to be used as the patient's social security, cert, SIN or assigned number (max length = 16 bytes; longer values will be truncated)

szIDnum

The number or string that is to be used as the patient's ID number. (max length = 64 bytes; longer values will be truncated)

szDOB

The patient's date-of-birth in any format (i.e. MM/DD/YY, MM/DD/YY, MMMMMM DD, YYYY, etc.).  Note that it is recommended that the month be specified before the day in short formats. (max length = 64 bytes; longer values will be truncated)

uAdultTeeth
uDeciduousTeeth

Specifies which teeth to open images for. uAdultTeeth takes precedence over uDeciuousTeeth. The least-significant-bit corresponds to the first tooth number (e.g. #1 or A).

szFilename

Filename without the path of the patient image to open. If uAdultTeeth or uDeciduousTeeth are non-zero, then this parameter is ignored.

Returns:

TRUE

An image was successfully captured.

FALSE

The patient could not be found or the specified file(s) do not exist.

 

void FAR PASCAL
XVSuppressSplashScreens(const unsigned long bFlag);

Description:

Called to suppress the splash screen from being displayed for any of the various function calls.  Note that only version 3.9 build 17 and higher support suppression of the splash screen.

Parameters:

bFlag

TRUE or FALSE to indicate whether or not the splash screen should be displayed.

Returns:

N/A

 

 

int FAR PASCAL
XVRetrieveToothInformation(LPCSTR szFirstName, LPCSTR szLastName, LPCSTR szSSnum, LPCSTR szIDnum, LPCSTR szDOB, const unsigned long uAdultTeeth, const unsigned long uDeciduousTeeth, LPCSTR szTargetFilename);

Description:

Can be called to invoke and wait for tooth information to be returned from XrayVision for the specified patient.   If the patient does not exist, the patient is NOT created and the function returns FALSE.

Parameters:

szFirstName

The patient's first name (max length = 64 bytes; longer values will be truncated)

szLastName

The patient's last name (max length = 64 bytes; longer values will be truncated)

szSSnum

The number or string that is to be used as the patient's social security, cert, SIN or assigned number (max length = 16 bytes; longer values will be truncated)

szIDnum

The number or string that is to be used as the patient's ID number. (max length = 64 bytes; longer values will be truncated)

szDOB

The patient's date-of-birth in any format (i.e. MM/DD/YY, MM/DD/YY, MMMMMM DD, YYYY, etc.).  Note that it is recommended that the month be specified before the day in short formats. (max length = 64 bytes; longer values will be truncated)

uAdultTeeth
uDeciduousTeeth

Specifies which teeth to open images for. uAdultTeeth takes precedence over uDeciuousTeeth. The least-significant-bit corresponds to the first tooth number (e.g. #1 or A). If both of these parameters are set to "0x0" then the function returns information about images that are not associated with any teeth. If both of these parameters are set to "0xFFFFFFFF" then the function returns information about all images.

szFilename

Fully qualified path of the filename where the information is to be saved. Format of the information in this file can be found in the Command Line Arguments document for the XrayVision Product line.

Returns:

TRUE

An image was successfully captured.

FALSE

The patient could not be found or the specified file(s) do not exist.

 

void FAR PASCAL
XVStartMinimized(const unsigned long bFlag);

Description:

Called to force the target application to start minimized. By default any target application starts in a standard window state. This function was added in version v1.0 b8 of the link DLL.

Parameters:

bFlag

TRUE or FALSE to indicate whether or not the application should start minimized.

Returns:

N/A

 

 

void FAR PASCAL
XVLauchAnyXVProduct(void);

Description:

Called to indicate that the DLL should launch any XrayVision or XVLite product it can find on the target computer. This is the default behavior of the DLL.

Parameters:

N/A

 

Returns:

N/A

 

 

void FAR PASCAL
XVLaunchXVProduct(void);

Description:

Called to indicate that the DLL should launch any XrayVision product it can find on the target computer. Calling this function will prevent any XVLite applications from being invoked.

Parameters:

N/A

 

Returns:

N/A

 

 

void FAR PASCAL
XVLaunchXVLiteProduct(void);

Description:

Called to indicate that the DLL should launch any XVLite product it can find on the target computer. Calling this function will prevent any XrayVision applications from being invoked.

Parameters:

N/A

 

Returns:

N/A

 

 

int FAR PASCAL
XVGetLaunchedEXEFilename(char *pBuffer, const unsigned long uBufferSize);

Description:

Calling this function will enable the invoking application to get the path and filename of the executable that will be invoked by the DLL. Invoking this function will also indicate if a valid executable can be found on the target computer. Note that this function can be used in conjunction with XVLauchAnyXVProduct, XVLaunchXVProduct and XVLaunchXVLiteProduct to detemine exactly which application should be launched.

Parameters:

pBuffer

Pointer to a character buffer to receive the path and filename of the target EXE. This parameter can be NULL.

uBufferSize

Size in characters to the memory pointed to by pBuffer

Returns:

TRUE

A target EXE was successfully located.

FALSE

No target EXE could be located.

XrayVision vs. XVLite Function Support

XrayVision supports all command line options above, however, XVLite DOES NOT support the following: