[Kpvm Index] [Kpvm Hierarchy] [Headers]
KPvm is the Main PVM-Wrapper. More...
#include <kpvm.h>
Inherits: QWidget
KPVm stands for the local running pvm-process so there must be exactly one instance of KPvm. It provides the basic functions and handles them through to the non-OO pvm.
[public]
**\n
[public]
checks if this object has a spawning parent or not.
[public]
returns a KPvmParent object of the spawning parent or NULL if there is no parent.
[public]
returns the TaskId of the main KPvm-Object
[public]
returns the hostname on which this main KPvm-Object is running
[public]
creates numProc tasks and returns a QList< KPvmChild > representing the newly created tasks.
argv | argument vector for the invoked fname |
flag |
same as the non-OO-pvm spawn PvmDataDefault-->PVM can choose any host to start on PvmTaskHost-->where contains the hostname to start on PvmTaskArch-->where contains the architecture to start on |
numProc | number of tasks to spawn |
fname | Filename of the pvm-executable (may also be non-OO-pvm). If fname is not an absolute file, the actual working directory path is added. |
[public slot]
sends a child of Persist to a KPvmEntity with a msgtag. Persist::objState of the child of Persist is called and this state is then packaged and sent to KPvmEntity
sendNetEfficient |
true (default) packs the types and looses the VarTags false packs the whole VarTuples incl. VarTags as strings |
[public slot]
changes the interval in which it is looked for newly received data. When this object is constructed, a 20 msec Interval is installed.
[protected]
this is internally used to store every known KPvmEntity which was spawned by KPvm or the local parent.
[protected slot]
checks in constant time intervals if there is incoming KPersist data from other tasks.
[protected slot]
is called to exit cleanly from Qt and pvm.
[signal]
dataRecieved is the most important signal, as it passes all received data to the connected slots. You have to connect an object-generating slot to it (see kpvm-example) where you go through all your possibly sendable Classes (inheriting Persist) and create an apropriate class and fill it with KPvm::setObjState
If your programm works im different steps (eg. Database split -> join -> merge back) you may want to have different handling slots and you may want to connect/disconnect to the dataHandler needed...
| Kdoc |