class rclip

Remote ClipBoard services via PLP More...

Definition#include <lib/rclip.h>
List of all Methods
Annotated List

Public Methods

Protected Types

Protected Methods

Protected Members

Detailed Description

Remote ClipBoard services via PLP

This class implements access to the remote clipboard notification feature of the Psion. The Psion uses a file C:\System\Data\Clpboard.cbd for storing the content of its clipboard. This file can be accessed like any other regular file on the Psion using the rfsv implementation. This class handles notification about changes of this file. There are two methods of notification implemented. Using waitNotify , a blocking method can be used and using sendListen followed by checkNotify , a polling approach (usable for GUI programs) can be implemented.

 rclip (ppsocket *skt)

Constructs a new rclip object.

sktThe socket to be used by this object.

rclip ()


void  reset ()

Initializes a connection to the remote machine.

void  reconnect ()

Attempts to re-establish a remote connection by first closing the socket, then connecting again to the ncpd daemon and finally calling reset.

Enum<rfsv::errs>  getStatus ()

Retrieves the current status of the connection.

Returns: The connection status.

Enum<rfsv::errs>  initClipbd ()

Send initialization frame.

Must be called once after a new rclip object has be called. It sends an initialzation frame to the Psion's server and returns its status.

Returns: The connection status.

Enum<rfsv::errs>  sendListen ()

Send listen request.

Calling this method arms the Psion's clipboard server. After that, every change of the Psion's clipboard file will be signaled. To poll the signal, subsequent calls to checkNotify should be made.

Returns: The connection status.

Enum<rfsv::errs>  checkNotify ()

Check for clipboard notification.

If the Psion has sent a notification, this method returns rfsv::E_PSI_GEN_NONE . If there is no notification pending, this method returns rfsv::E_PSI_FILE_EOF All other return values are to be treated as errors

Returns: The connection status.

Enum<rfsv::errs>  waitNotify ()

Send listen request and wait for notification.

This method is the blocking version of the two above methods. It first sends a listen request and then blocks until a notification has sent by the Psion or an error occured.

Returns: The connection status, rfsv::E_PSI_GEN_NONE if a notification has been received.

Enum<rfsv::errs>  notify ()

Send a notification to the Psion.

If the application wishes to notify the Psion after changing the clipboard file, this method can be used.

Returns: The connection status.

enum commands {RCLIP_INIT = 0x00, RCLIP_NOTIFY = 0x08, RCLIP_LISTEN = 0x04, }


The possible commands.

ppsocket * skt


The socket, used for communication with ncpd.

Enum<rfsv::errs> status


The current status of the connection.

bool  sendCommand (enum commands cc)


Sends a command to the remote side.

If communication fails, a reconnect is triggered and a second attempt to transmit the request is attempted. If that second attempt fails, the function returns an error an sets rpcs::status to E_PSI_FILE_DISC.

ccThe command to execute on the remote side.
dataAdditional data for this command.

Returns: true on success, false on failure.

Enum<rfsv::errs>  getResponse (bufferStore &data)


const char * getConnectName ()


Generated by: on Sat Aug 10 18:46:04 2002, using kdoc 2.0a36.