The window. More...
#include <window.h>
Inheritance diagram for eq::server::Window:
Collaboration diagram for eq::server::Window:Public Member Functions | |
| Window (Pipe *parent) | |
| Constructs a new Window. | |
| void | send (net::ObjectPacket &packet) |
Data Access | |
| Node * | getNode () |
| const Node * | getNode () const |
| Config * | getConfig () |
| const Config * | getConfig () const |
| ServerPtr | getServer () |
| Channel * | getChannel (const ChannelPath &path) |
| net::CommandQueue * | getMainThreadQueue () |
| net::CommandQueue * | getCommandThreadQueue () |
| void | activate () |
| Increase window activition count. | |
| void | deactivate () |
| Decrease window activition count. | |
| State | getState () const |
| void | setState (const State state) |
| bool | isActive () const |
| bool | isStopped () const |
| bool | isRunning () const |
| bool | needsDelete () const |
| void | postDelete () |
| Schedule deletion of this window. | |
| void | addTasks (const uint32_t tasks) |
| Add additional tasks this window, and all its parents, might potentially execute. | |
| net::Barrier * | joinSwapBarrier (net::Barrier *barrier) |
| Join a swap barrier for the next update. | |
| net::Barrier * | joinNVSwapBarrier (const SwapBarrier *swapBarrier, net::Barrier *netBarrier) |
| Join a NV_swap_group barrier for the next update. | |
| bool | hasNVSwapBarrier () const |
| void | setLastDrawChannel (const Channel *channel) |
| The last drawing channel for this entity. | |
| const Channel * | getLastDrawChannel () const |
| void | setMaxFPS (const float fps) |
| The maximum frame rate for this window. | |
| float | getMaxFPS () const |
Operations | |
| void | configInit (const uint32_t initID, const uint32_t frameNumber) |
| Start initializing this entity. | |
| bool | syncConfigInit () |
| Sync initialization of this entity. | |
| void | configExit () |
| Start exiting this entity. | |
| bool | syncConfigExit () |
| Sync exit of this entity. | |
| void | updateDraw (const uint32_t frameID, const uint32_t frameNumber) |
| Update one frame. | |
| void | updatePost (const uint32_t frameID, const uint32_t frameNumber) |
| Trigger the post-draw operations. | |
Protected Member Functions | |
| virtual void | attachToSession (const uint32_t id, const uint32_t instanceID, net::Session *session) |
| virtual void | deserialize (eq::net::DataIStream &, const uint64_t) |
| Worker for unpack() and applyInstanceData(). | |
| virtual void | removeChild (const uint32_t id) |
Friends | |
| std::ostream & | operator<< (std::ostream &, const Window *) |
The window.
Definition at line 42 of file server/window.h.
| void eq::server::Window::activate | ( | ) |
Increase window activition count.
Definition at line 172 of file server/window.cpp.
References eq::server::Pipe::activate(), EQLOG, and eq::fabric::Window< Pipe, Window, Channel >::getPipe().
Here is the call graph for this function:| void eq::server::Window::attachToSession | ( | const uint32_t | id, | |
| const uint32_t | instanceID, | |||
| net::Session * | session | |||
| ) | [protected, virtual] |
Reimplemented from eq::fabric::Window< Pipe, Window, Channel >.
Definition at line 70 of file server/window.cpp.
References eq::net::Dispatcher::registerCommand().
Here is the call graph for this function:| void eq::server::Window::configExit | ( | ) |
Start exiting this entity.
Definition at line 351 of file server/window.cpp.
References EQLOG, eq::net::Object::getID(), eq::fabric::Window< Pipe, Window, Channel >::getPipe(), isRunning(), eq::LOG_INIT, needsDelete(), eq::server::STATE_DELETE, eq::server::STATE_EXITING, and eq::server::STATE_INIT_FAILED.
Referenced by syncConfigInit().
Here is the call graph for this function:
Here is the caller graph for this function:| void eq::server::Window::configInit | ( | const uint32_t | initID, | |
| const uint32_t | frameNumber | |||
| ) |
Start initializing this entity.
Definition at line 310 of file server/window.cpp.
References EQLOG, eq::net::Object::getID(), eq::fabric::Window< Pipe, Window, Channel >::getPipe(), eq::LOG_INIT, eq::LOG_TASKS, needsDelete(), and eq::server::STATE_STOPPED.
Here is the call graph for this function:| void eq::server::Window::deactivate | ( | ) |
Decrease window activition count.
Definition at line 184 of file server/window.cpp.
References eq::server::Pipe::deactivate(), EQLOG, and eq::fabric::Window< Pipe, Window, Channel >::getPipe().
Here is the call graph for this function:| void eq::server::Window::deserialize | ( | eq::net::DataIStream & | , | |
| const uint64_t | uint64_t | |||
| ) | [protected, virtual] |
Worker for unpack() and applyInstanceData().
This function is called with the dirty bits send by the master instance. The dirty bits are received beforehand, and do not need to be deserialized by the overriding method.
Reimplemented from eq::fabric::Window< Pipe, Window, Channel >.
Definition at line 83 of file server/window.cpp.
References eq::net::Object::isMaster(), and eq::fabric::Window< Pipe, Window, Channel >::setDirty().
Here is the call graph for this function:| ServerPtr eq::server::Window::getServer | ( | ) |
Definition at line 140 of file server/window.cpp.
References eq::fabric::Window< Pipe, Window, Channel >::getPipe().
Here is the call graph for this function:| State eq::server::Window::getState | ( | ) | const [inline] |
Definition at line 77 of file server/window.h.
References eq::base::Monitor< T >::get().
Here is the call graph for this function:| bool eq::server::Window::hasNVSwapBarrier | ( | ) | const [inline] |
Definition at line 126 of file server/window.h.
| bool eq::server::Window::isActive | ( | ) | const [inline] |
Definition at line 83 of file server/window.h.
Referenced by syncConfigExit(), eq::server::Pipe::update(), and updateDraw().
Here is the caller graph for this function:| bool eq::server::Window::isRunning | ( | ) | const [inline] |
Definition at line 89 of file server/window.h.
Referenced by configExit(), eq::server::Pipe::update(), and updateDraw().
Here is the caller graph for this function:| bool eq::server::Window::isStopped | ( | ) | const [inline] |
Definition at line 86 of file server/window.h.
| net::Barrier * eq::server::Window::joinNVSwapBarrier | ( | const SwapBarrier * | swapBarrier, | |
| net::Barrier * | netBarrier | |||
| ) |
Join a NV_swap_group barrier for the next update.
| swapBarrier | the swap barrier containing the NV_swap_group parameters. | |
| netBarrier | the net::Barrier to protect the entry from the NV_swap_group , or 0 if this is the first window entering. |
Definition at line 275 of file server/window.cpp.
References eq::server::Node::getBarrier(), and eq::net::Barrier::increase().
Here is the call graph for this function:| net::Barrier * eq::server::Window::joinSwapBarrier | ( | net::Barrier * | barrier | ) |
Join a swap barrier for the next update.
| barrier | the net::Barrier for the swap barrier group, or 0 if this is the first window. |
Definition at line 224 of file server/window.cpp.
References find(), eq::server::Node::getBarrier(), eq::fabric::Window< Pipe, Window, Channel >::getPipe(), eq::fabric::Pipe< N, P, W, V >::getWindows(), and eq::net::Barrier::increase().
Here is the call graph for this function:| bool eq::server::Window::needsDelete | ( | ) | const [inline] |
Definition at line 92 of file server/window.h.
Referenced by configExit(), configInit(), syncConfigExit(), and syncConfigInit().
Here is the caller graph for this function:| void eq::server::Window::postDelete | ( | ) |
Schedule deletion of this window.
Definition at line 100 of file server/window.cpp.
References eq::base::Monitor< T >::get(), eq::fabric::Window< Pipe, Window, Channel >::getChannels(), and eq::server::Config::postNeedsFinish().
Here is the call graph for this function:| bool eq::server::Window::syncConfigExit | ( | ) |
Sync exit of this entity.
Definition at line 370 of file server/window.cpp.
References isActive(), needsDelete(), eq::server::STATE_DELETE, eq::server::STATE_EXIT_FAILED, eq::server::STATE_EXITING, eq::server::STATE_FAILED, and eq::base::Monitor< T >::waitNE().
Here is the call graph for this function:| bool eq::server::Window::syncConfigInit | ( | ) |
Sync initialization of this entity.
Definition at line 329 of file server/window.cpp.
References configExit(), EQWARN, eq::fabric::Object::getErrorMessage(), needsDelete(), eq::server::STATE_INIT_FAILED, eq::server::STATE_INIT_SUCCESS, eq::server::STATE_INITIALIZING, and eq::base::Monitor< T >::waitNE().
Here is the call graph for this function:| void eq::server::Window::updateDraw | ( | const uint32_t | frameID, | |
| const uint32_t | frameNumber | |||
| ) |
Update one frame.
| frameID | a per-frame identifier passed to all rendering methods. | |
| frameNumber | the number of the frame. |
Definition at line 387 of file server/window.cpp.
References EQLOG, eq::fabric::Window< Pipe, Window, Channel >::getChannels(), eq::net::Object::getVersion(), eq::server::Channel::isActive(), isActive(), eq::server::Channel::isRunning(), isRunning(), eq::LOG_TASKS, and eq::server::Channel::update().
Referenced by eq::server::Pipe::update().
Here is the call graph for this function:
Here is the caller graph for this function:| void eq::server::Window::updatePost | ( | const uint32_t | frameID, | |
| const uint32_t | frameNumber | |||
| ) |
Trigger the post-draw operations.
| frameID | a per-frame identifier passed to all rendering methods. | |
| frameNumber | the number of the frame. |
Definition at line 420 of file server/window.cpp.
References EQLOG, and eq::LOG_TASKS.
Referenced by eq::server::Pipe::update().
Here is the caller graph for this function:
0.9.1 by
1.7.1