The SuperCom API (also DLL API) has more than 200 functions for serial data communication, data communication via modem, TAPI, ISDN or TCP/IP. There are also class libraries, e.g. for C++, C#, Delphi, Java, Pascal, VB net, etc., which use the functions presented here and simplify working with SuperCom even more in the appropriate development environment.
The SuperCom functions and class libraries are of course documented and are also presented in many example programs.
The SuperCom API is platform independent thus also available in Windows and Linux. This enables developing of portable applications without extra effort and costs.
Even if SuperCom to some appears massive, consider that SuperCom covers nearly all aspects of the modern data communication. Usually a small part of SuperCom is purchased and used (the major reason for the many product numbers). But when it comes to the implementation, it quickly becomes apparent that just a few lines of code (mostly copy and paste from the examples*) deliver, what is expected, very quickly.
*Due to the huge amount of example programs and in order to save time, please don't hesitate to ask the tech support which one is most near to what you need.
ComInit |
Setup a communication link (see also RS_OpenLink) |
ComPortPresent |
Returns availability of a serial port or other data communication link |
ComPortPresentEx |
Returns name and availability of a serial port or other data communication link |
ComSaveState |
Saves the current device state in order to be able to reset the device to this state later |
ComSetState |
Sets transmission parameters |
ComBufCount |
Returns the number of characters in each buffer |
ComBufClear |
Clear the specific Rx or Tx buffer |
ComSetBufSize |
Changes the buffer size |
ComGetBufSize |
Returns the buffer size |
ComEnableFIFO |
Set 16550 and compatible FIFO size |
ComRS485 |
Enables RS-485 automated data flow |
ComDTROn |
Set DTR on logical high level |
ComRTSOn |
Set RTS on logical high level |
ComGetFlow |
Gets the current flow control |
ComSetFlow |
Sets the flow control |
ComGetInfo |
Retrieves link information e.g. RS-232 info, ISDN Caller Id, TCP/IP socket information etc. |
ComRead |
Reads a data byte |
ComWrite |
Send a data byte |
ComGetSetEventMask |
Defines the events that are expected to be reported - other events will be suppressed |
ComGetSetEventProc |
Installs a user event function in order to process the comm events |
ComSpyChar |
Reads a data byte without removing it from the receive buffer |
ComStateRTS |
Returns the state of RTS |
ComStateDTR |
Returns the state of DTR |
ComStateCTS |
Returns the state of CTS |
ComStateDSR |
Returns the state of DSR |
ComStateRI |
Returns the state of RI |
ComUngetChar |
Places a character back into the receive buffer |
RS_OpenLink |
A high level and intelligent function. Setup and connect through one call. Replaces many single function calls e.g. ComInit, ComSetState, RS_ConnectEx. |
RS_RXInTime |
Attempts to receive a character with timeout |
RS_TXInTime |
Transmits a character using timeout |
RS_RXPacket |
Receives a data packet |
RS_TXPacket |
Transmits a data packet |
RS_TXQPacket |
Transmits a data packet as fastest as possible |
RS_RXPInTime |
Receives a data packet with timeout detection |
RS_TXPInTime |
Transmits a data packet with timeout detection |
RS_RXPXMODEM |
Receives a data packet according to the XMODEM protocol |
RS_TXPXMODEM |
Transmits a data packet according to the XMODEM protocol |
RS_TXFile_ZMODEM |
Transmits one or more files using the ZMODEM protocol |
RS_TXFile_... |
Transmits a file using the specified protocol (ZMODEM, XMODEM, YMODEM, KERMIT, ASCII). Can also transfer one or more files (also wildcards) completely in the background (also with queue). Completely transparent for the application without blocking it. |
RS_RXFile_... |
Receives one or more files using the specified protocol (ZMODEM, XMODEM, YMODEM, KERMIT, ASCII). Similar to RS_TXFile_... this function can also receive one or more files completely in the background. Completely transparent for the application without blocking it. |
RS_Dial |
Dials a remote subscriber via Modem, ISDN or TCP/IP |
RS_Connect |
Runs after the dial the connection loop |
RS_ConnectEx |
The one expert to establish a connection no matter what the data link physics are. Runs in blocking mode or completely transparent in background (non-blocking). Both modes can provide status events. It replaces single calls like RS_Dial, RS Connect. RS_OpenLink is newer and in some cases better and shorter since it initializes and connects in one call. |
RS_Ringing |
Detects whether an incoming call is present |
RS_Carrier |
Detects whether a carrier signal is present (successful connection) |
RS_GetCRC_CCITT |
Calculates an 16 bit checksum according to the CCITT polynomial |
RS_GetChkSum |
Calculates an 8 bit checksum |
RS_GetDataPacket |
Receive complete data packets according to come criteria |
RS_ANSIInit |
Activates the ANSI/VT100 terminal emulation |
RS_VT52Init |
Activates the VT52 terminal emulation |
RS_TTYInit |
Activates the TTY terminal emulation |
RS_WaitString |
Activate data trigger events or wait for a string |
... some of the Trigger Helper API |
|
TriggerAdd |
Define a trigger (byte sequence) that will report event when received |
TriggerDel |
Remove a trigger. It will no more report. |
TriggerGetKERMIT |
Query the trigger used to signal KERMIT. |
TriggerGetZMODEM |
Query the trigger used to signal ZMODEM. |
: |
: |
More samples on setting a data connection with SuperCom can be found here.