#include <BALL/VIEW/KERNEL/serverWidget.h>
Classes | |
class | BALLViewServer |
class | NotCompositeObject |
Public Member Functions | |
Constructors | |
ServerWidget (QWidget *parent=0, const char *name=0) | |
ServerWidget (const ServerWidget &server) | |
Destructors | |
virtual | ~ServerWidget () |
virtual void | clear () |
Accessors: inspectors and mutators | |
virtual void | activate () |
virtual void | deactivate () |
void | setPort (const int port) |
int | getPort () const |
void | registerObjectCreator (const ObjectCreator &s) |
void | unregisterObjectCreator () |
ObjectCreator & | getObjectCreator () |
const ObjectCreator & | getObjectCreator () const |
virtual void | initializeWidget (MainControl &main_control) |
virtual void | finalizeWidget (MainControl &main_control) |
virtual void | initializePreferencesTab (Preferences &preferences) |
virtual void | finalizePreferencesTab (Preferences &preferences) |
virtual void | applyPreferences () |
debuggers and diagnostics | |
virtual bool | isValid () const |
virtual void | dump (std::ostream &s=std::cout, Size depth=0) const |
virtual void | changeLock (bool lock) |
Private Attributes | |
BALLViewServer | server_ |
ObjectCreator * | object_creator_ |
int | port_ |
ServerPreferences * | server_preferences_ |
QLabel * | server_icon_ |
Static Private Attributes | |
static const char * | mini_ray_xpm_ [] |
Signals and Slots | |
| |
void | handleLocking (bool lock) |
void | lockRequested (bool lock) |
ServerWidget class. The class ServerWidget handles all incoming PersistentObject objects, converts them into Composite objects (if possible) and sents them through the ConnectionObject tree with the message NewCompositeMessage. Also it stores all received Composite objects and replaces them if the same Composite object is received again. If a Composite object is replaced the message RemovedCompositeMessage will be sent through the ConnectionObject tree and after that the the message NewCompositeMessage with the new received composite will be sent.
Definition at line 59 of file serverWidget.h.
BALL::VIEW::ServerWidget::ServerWidget | ( | QWidget * | parent = 0 , |
|
const char * | name = 0 | |||
) |
Default Constructor. The state of this server is:
VIEW_DEFAULT_PORT
if activated BALL::VIEW::ServerWidget::ServerWidget | ( | const ServerWidget & | server | ) |
virtual BALL::VIEW::ServerWidget::~ServerWidget | ( | ) | [virtual] |
Destructor.
virtual void BALL::VIEW::ServerWidget::activate | ( | ) | [inline, virtual] |
Start the server.
Definition at line 169 of file serverWidget.h.
virtual void BALL::VIEW::ServerWidget::applyPreferences | ( | ) | [virtual] |
Apply the preferences of the specific tab. This method applies the preferences of the own tab ServerPreferences to this server. This method is called automatically by the method applyPreferencesTab of the class MainControl. See ModularWidget for more information concerning preferences tabs.
preferences | the Preferences dialog of the MainControl |
Reimplemented from BALL::VIEW::ModularWidget.
virtual void BALL::VIEW::ServerWidget::changeLock | ( | bool | lock | ) | [virtual] |
This function is used by the server thread to handle locking of composites across several threads.
The protocol is rather complicated: the server thread reacts to a connection, creates a composite, calls changeLock(), this emits the signal "lockRequested", which is finally handled in the slot handleLocking(). The reason for this involved setup is the separation of server and GUI threads, which does not allow to safely lock the composites in the server thread.
virtual void BALL::VIEW::ServerWidget::clear | ( | ) | [virtual] |
Explicit default initialization. Calls ConnectionObject::clear.
Reimplemented from BALL::VIEW::ModularWidget.
virtual void BALL::VIEW::ServerWidget::deactivate | ( | ) | [inline, virtual] |
Stop the server.
Definition at line 173 of file serverWidget.h.
virtual void BALL::VIEW::ServerWidget::dump | ( | std::ostream & | s = std::cout , |
|
Size | depth = 0 | |||
) | const [virtual] |
Dump the current state of this server to the output ostream with a dumping depth.
s | output stream where to output the state of this server | |
depth | the dumping depth |
Reimplemented from BALL::VIEW::ModularWidget.
virtual void BALL::VIEW::ServerWidget::finalizePreferencesTab | ( | Preferences & | preferences | ) | [virtual] |
Remove the preferences tab. This method removes the ServerPreferences tab of this server from the Preferences dialog of the MainControl. This method is called automatically by the method aboutToExit method of the class MainControl at the end of the application. See ModularWidget for more information concerning preferences tabs.
preferences | the Preferences dialog of the MainControl |
Reimplemented from BALL::VIEW::ModularWidget.
virtual void BALL::VIEW::ServerWidget::finalizeWidget | ( | MainControl & | main_control | ) | [virtual] |
Remove the server widget. This method deletes the icon of this server and removes it from MainControl. This method will be called by aboutToExit of the class MainControl.
Reimplemented from BALL::VIEW::ModularWidget.
const ObjectCreator& BALL::VIEW::ServerWidget::getObjectCreator | ( | ) | const |
Return the ObjectCreator, const version.
ObjectCreator& BALL::VIEW::ServerWidget::getObjectCreator | ( | ) |
Return the ObjectCreator.
int BALL::VIEW::ServerWidget::getPort | ( | ) | const |
Return the server port. Return the port of this server.
void BALL::VIEW::ServerWidget::handleLocking | ( | bool | lock | ) | [slot] |
virtual void BALL::VIEW::ServerWidget::initializePreferencesTab | ( | Preferences & | preferences | ) | [virtual] |
Initialize a preferences tab for the server. This method creates the preferences tab ServerPreferences for this server and inserts it into the Preferences dialog of the MainControl. This method is called automatically by the method show of the class MainControl at the start of the application. See ModularWidget for more information concerning preferences tabs.
preferences | the Preferences dialog of the MainControl |
Reimplemented from BALL::VIEW::ModularWidget.
virtual void BALL::VIEW::ServerWidget::initializeWidget | ( | MainControl & | main_control | ) | [virtual] |
Initialize the server widget. This method initializes the icon of this server and adds it to MainControl. This method will be called by show of the class MainControl.
Reimplemented from BALL::VIEW::ModularWidget.
virtual bool BALL::VIEW::ServerWidget::isValid | ( | ) | const [virtual] |
Internal state and consistency self-validation. Calls {ConnectionObject::isValid}.
true
if the internal state of this server is correct Reimplemented from BALL::VIEW::ConnectionObject.
void BALL::VIEW::ServerWidget::lockRequested | ( | bool | lock | ) | [signal] |
void BALL::VIEW::ServerWidget::registerObjectCreator | ( | const ObjectCreator & | s | ) |
Register a ObjectCreator that is used for converting PersistentObject objects into Composite objects. Every ObjectCreator, that is still registered, when a ServerWidget instance is destructed, will be deleted.
void BALL::VIEW::ServerWidget::setPort | ( | const int | port | ) |
Set the server port.
port | the new port |
void BALL::VIEW::ServerWidget::unregisterObjectCreator | ( | ) |
Reset the ObjectCreator. After calling this method PersistentObject objects will be converted using the default ObjectCreator.
const char* BALL::VIEW::ServerWidget::mini_ray_xpm_[] [static, private] |
Definition at line 322 of file serverWidget.h.
private storage variables.
Definition at line 315 of file serverWidget.h.
int BALL::VIEW::ServerWidget::port_ [private] |
Definition at line 318 of file serverWidget.h.
The actual server thread
Definition at line 311 of file serverWidget.h.
QLabel* BALL::VIEW::ServerWidget::server_icon_ [private] |
Definition at line 321 of file serverWidget.h.
Definition at line 320 of file serverWidget.h.