UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
UrcServer Class Reference

#include <UrcServer.hpp>

Inheritance diagram for UrcServer:
UrcProtocol RecItem RecDef SerialThis UrcDB1Server

Public Member Functions

 UrcServer (Widget wToplevel, const RecDef &protodef)
 
virtual void flush_changes ()
 
virtual void callback (int atom_i)
 
- Public Member Functions inherited from UrcProtocol
 UrcProtocol (Display *xdisplay, const RecDef &protodef, const short version[2]=NULL)
 
 UrcProtocol (const UrcProtocol &proto)
 
virtual void flush_changes (Window wid, Logic bForce=FALSE)
 
virtual Logic update_atom (Window wid, Atom atom)
 
virtual AnyValue read_atom (Window wid, int atom_i)
 
virtual Logic implements_protocol (Window wid) const
 
virtual void version (short version[2]) const
 
virtual Logic version (Window wid, short version[2]) const
 
- Public Member Functions inherited from RecItem
 RecItem (const RecDef &rdef)
 
 RecItem (const RecItem &r)
 
 RecItem (InputStream &ist)
 
 RecItem (RecDef *prdef, void *recdata)
 
void attach (void *recdata)
 
virtual ~RecItem ()
 
RecItemoperator= (const RecItem &r)
 
virtual AnyValuevalue (int dmn_i)
 
AnyValuevalue (const char *dname)
 
virtual const AnyValueget_value (int dmn_i) const
 
const AnyValueget_value (const char *dname) const
 
virtual void get_value (int dmn_i, AnyValue &av) const
 
void get_value (const char *dname, AnyValue &av) const
 
virtual void set_value (int dmn_i, const AnyValue &av)
 
void set_value (const char *dname, const AnyValue &av)
 
virtual void set_row_data (const void *row_data)
 
virtual void * get_row_data () const
 
virtual void copy_row_data (const RecDef &rdef, void *row_data) const
 
virtual void add_domain (const DomainDef &dmn)
 
virtual void serialize (OutputStream &ost) const
 
virtual void deserialize (InputStream &ist)
 
- Public Member Functions inherited from RecDef
 RecDef (const char *rtname, const DomainAr &dmns)
 
 RecDef (const char *rtname, int dmns_n, const DomainDef *dmns)
 
 RecDef (const RecDef &rdef)
 
 RecDef (const char *rtname, const RecDef &rdef1, const RecDef &rdef2)
 
 RecDef (InputStream &ist)
 
virtual ~RecDef ()
 
const char * record_name () const
 
size_t record_size () const
 
unsigned domain_count () const
 
int n2i (const char *dname) const
 
void * offset (int dmn_i, const void *base) const
 
const DomainDefdomain_def (int dmn_i) const
 
DomainDefdomain_defs () const
 
void set_options (int dmn_i, void *options)
 
bool operator== (const RecDef &rdef) const
 
bool operator!= (const RecDef &rdef) const
 
bool check_domain (const char *dname) const
 
bool check_domain (const char *dname, AtomType atype, unsigned dim=1) const
 
- Public Member Functions inherited from SerialThis
 SerialThis ()
 
 SerialThis (InputStream &ist)
 

Static Protected Member Functions

static void control_handler (Widget w, XtPointer pUserData, XEvent *pEvent, Boolean *bContinueToDispatch)
 

Protected Attributes

Window widToplevel
 
- Protected Attributes inherited from UrcProtocol
Display * dpy
 
AtomAr atoms
 
Atom proto_atom
 
short proto_version [2]
 
- Protected Attributes inherited from RecItem
bool own_memory
 
void * ptr_rec
 
AnyValue ** av
 

Additional Inherited Members

- Protected Member Functions inherited from RecDef
 RecDef (RecDef *rdef)
 
 RecDef ()
 
void constructor (const char *rtname, const DomainAr &dmns)
 

Detailed Description

Server side of remote control protocol implementation. Server registers the protocol atoms and adds to program context some event handler, which listens for new atom change atoms. In case of expected event custom callback is called.

Constructor & Destructor Documentation

UrcServer::UrcServer ( Widget  wToplevel,
const RecDef protodef 
)

Create the server for given protocol description and registers global event handler.

Member Function Documentation

virtual void UrcServer::callback ( int  atom_i)
virtual

The callback is called in case of atom_i is really changed from outside. It must be redefined in inherited classes.

static void UrcServer::control_handler ( Widget  w,
XtPointer  pUserData,
XEvent *  pEvent,
Boolean *  bContinueToDispatch 
)
staticprotected

Event handler for remote control commands.

virtual void UrcServer::flush_changes ( )
virtual

Update only changed values in served window.

Member Data Documentation

Window UrcServer::widToplevel
protected

Stored top level window id


The documentation for this class was generated from the following file: