ParCompMark::Node Class Reference

#include <PCMNode.h>

Inheritance diagram for ParCompMark::Node:

Inheritance graph
[legend]
Collaboration diagram for ParCompMark::Node:

Collaboration graph
[legend]
List of all members.

Detailed Description

Node class.

Entity for composite and/or render a framelet.

Definition at line 75 of file PCMNode.h.


Public Types

typedef Pointer< Node, MutexPointer
 Type for pointer on this class.

Public Member Functions

Constructors & destructor
 Node ()
 Default constructor for Squirrel compatibility.
 Node (const std::string &name, Host *parent)
 Create node.
virtual ~Node ()
 The destructor.
Getters & setters
HostgetParent () const
 Getter of mParent.
const PCstring & getSearchPath () const
 Getter of mSearchPath.
Container< Process, Mutex
>::Pointer
getProcesses ()
 Getter of mProcesses.
OutputNode::PointergetOutputDocument ()
 Getter of mOutputDocument.
const bool & getInitialized () const
 Getter of mInitialized.
Methods
virtual void initialize ()
 Initialize the node.
virtual void finalize ()
 Finalize the node.
virtual ProcesscreateProcess (const char *processName)
 Create process on this node.
virtual BuffercreateBuffer (const char *name, const PCuint left, const PCuint top, const PCuint width, const PCuint height, const PCuint depthFormat)
 Create buffer on this node.
virtual Buffer::Pointer getBuffer (const std::string name)
 Get buffer by name.
virtual void start ()
 Start the processes.
virtual u32 stop ()
 Stop the processes.
virtual void collectData ()
 Collect data from nodes.
virtual void setFrameID (const u32 &frameID)
 Set the ending frameID of processes.

Static Public Member Functions

Scripting binding
static void squirrelGlue ()
 Static glue code method for Squirrel-C++ binding.

Protected Attributes

Variables
HostmParent
 Parent host of the node.
PCstring mSearchPath
 Search path of PC library.
Container< Process, Mutex
>::Pointer 
mProcesses
 Processes on this node.
OutputNode::Pointer mOutputDocument
 Node output document.
Container< Buffer, Mutex
>::Pointer 
mBuffers
 Grapics memory buffers on this node.
bool mInitialized
 The node is initialized.

Member Typedef Documentation

Type for pointer on this class.

Definition at line 116 of file PCMNode.h.


Constructor & Destructor Documentation

ParCompMark::Node::Node (  ) 

Default constructor for Squirrel compatibility.

Calling this constructor always raises an exception.

Definition at line 40 of file PCMNode.cpp.

References Except.

ParCompMark::Node::Node ( const std::string &  name,
Host parent 
)

Create node.

Normally Host calls this constructor.

Parameters:
[in] name Name of the node.
[in] parent Parent host

Definition at line 55 of file PCMNode.cpp.

References Assert, ParCompMark::Singleton< T >::getInstance(), ParCompMark::OutputNode::INFORMATION, mBuffers, mInitialized, ParCompMark::Name::mName, mOutputDocument, mProcesses, mSearchPath, and ParCompMark::Logger::NOTICE.

Here is the call graph for this function:

ParCompMark::Node::~Node (  )  [virtual]

The destructor.

This class has virtual destructor.

Definition at line 91 of file PCMNode.cpp.

References finalize(), ParCompMark::Singleton< T >::getInstance(), mInitialized, ParCompMark::Name::mName, and ParCompMark::Logger::NOTICE.

Here is the call graph for this function:


Member Function Documentation

void ParCompMark::Node::collectData (  )  [virtual]

Collect data from nodes.

Definition at line 204 of file PCMNode.cpp.

References mOutputDocument, and mProcesses.

Buffer * ParCompMark::Node::createBuffer ( const char *  name,
const PCuint  left,
const PCuint  top,
const PCuint  width,
const PCuint  height,
const PCuint  depthFormat 
) [virtual]

Create buffer on this node.

Parameters:
[in] name Name of the buffer
[in] left X offset of the image (it is 0 for whole images).
[in] top Y offset of the image (it is 0 for whole images).
[in] width Width of the image.
[in] height Height of the image.
[in] depthFormat Depth format used by this image.
Returns:
Pointer to the created buffer.

Definition at line 153 of file PCMNode.cpp.

References ParCompMark::Pointer< T, Lock >::getPtr(), ParCompMark::Pointer< T, Lock >::lock(), mBuffers, and ParCompMark::Pointer< T, Lock >::unlock().

Referenced by squirrelGlue().

Here is the call graph for this function:

Process * ParCompMark::Node::createProcess ( const char *  processName  )  [virtual]

Create process on this node.

Parameters:
[in] processName Name of the process (C string for squirrel compatibility).
Returns:
Pointer to the created process.

Definition at line 136 of file PCMNode.cpp.

References ParCompMark::Pointer< T, Lock >::getPtr(), ParCompMark::Pointer< T, Lock >::lock(), mProcesses, and ParCompMark::Pointer< T, Lock >::unlock().

Referenced by squirrelGlue().

Here is the call graph for this function:

void ParCompMark::Node::finalize (  )  [virtual]

Finalize the node.

Definition at line 121 of file PCMNode.cpp.

References Assert, ParCompMark::Logger::DEBUG, ParCompMark::Singleton< T >::getInstance(), ParCompMark::Pointer< T, Lock >::kill(), mBuffers, mInitialized, ParCompMark::Name::mName, and mProcesses.

Referenced by ~Node().

Here is the call graph for this function:

Buffer::Pointer ParCompMark::Node::getBuffer ( const std::string  name  )  [virtual]

Get buffer by name.

Parameters:
[in] name Name of the buffer
Returns:
Found buffer.

Definition at line 169 of file PCMNode.cpp.

References mBuffers.

Referenced by ParCompMark::RendererPlugin::_bufferGetter(), and ParCompMark::Process::setBufferByName().

const bool & ParCompMark::Node::getInitialized (  )  const [inline]

Getter of mInitialized.

Returns value of mInitialized.

Returns:
The value of mInitialized

Definition at line 382 of file PCMNode.h.

OutputNode::Pointer & ParCompMark::Node::getOutputDocument (  )  [inline]

Getter of mOutputDocument.

Returns value of mOutputDocument.

Returns:
The value of mOutputDocument

Definition at line 375 of file PCMNode.h.

Host * ParCompMark::Node::getParent (  )  const [inline]

Getter of mParent.

Returns value of mParent.

Returns:
The value of mParent

Definition at line 353 of file PCMNode.h.

Container< Process, Mutex >::Pointer & ParCompMark::Node::getProcesses (  )  [inline]

Getter of mProcesses.

Returns value of mProcesses.

Returns:
The value of mProcesses

Definition at line 368 of file PCMNode.h.

const PCstring & ParCompMark::Node::getSearchPath (  )  const [inline]

Getter of mSearchPath.

Returns value of mSearchPath.

Returns:
The value of mSearchPath

Definition at line 360 of file PCMNode.h.

void ParCompMark::Node::initialize (  )  [virtual]

Initialize the node.

Definition at line 105 of file PCMNode.cpp.

References Assert, ParCompMark::Logger::DEBUG, ParCompMark::Singleton< T >::getInstance(), mBuffers, mInitialized, and ParCompMark::Name::mName.

Here is the call graph for this function:

void ParCompMark::Node::setFrameID ( const u32 frameID  )  [virtual]

Set the ending frameID of processes.

Parameters:
[in] frameID StopID.

Definition at line 212 of file PCMNode.cpp.

References mProcesses.

static void ParCompMark::Node::squirrelGlue (  )  [inline, static]

Static glue code method for Squirrel-C++ binding.

This method should be call from each Squirrel virtual machines to generate the proper Squirrel glue code. To content of this method is fully autogenerated in the header implementation file, you should not modify it.

Definition at line 99 of file PCMNode.h.

References createBuffer(), and createProcess().

Referenced by ParCompMark::squirrelClassBindings().

Here is the call graph for this function:

void ParCompMark::Node::start (  )  [virtual]

Start the processes.

Definition at line 176 of file PCMNode.cpp.

References mProcesses.

u32 ParCompMark::Node::stop (  )  [virtual]

Stop the processes.

Returns:
frameID

Definition at line 184 of file PCMNode.cpp.

References mProcesses.


Member Data Documentation

Grapics memory buffers on this node.

Remarks:
This is own attribute of this class.

Definition at line 160 of file PCMNode.h.

Referenced by createBuffer(), finalize(), getBuffer(), initialize(), and Node().

The node is initialized.

Remarks:
This is own attribute of this class.

Definition at line 167 of file PCMNode.h.

Referenced by finalize(), initialize(), Node(), and ~Node().

Node output document.

Remarks:
This is own attribute of this class.

Definition at line 153 of file PCMNode.h.

Referenced by collectData(), and Node().

Parent host of the node.

(Parent reference is standard pointer to avoid circular reference)

Remarks:
This attribute references an attribute.

Definition at line 132 of file PCMNode.h.

Processes on this node.

Remarks:
This is own attribute of this class.

Definition at line 146 of file PCMNode.h.

Referenced by collectData(), createProcess(), finalize(), Node(), setFrameID(), start(), and stop().

PCstring ParCompMark::Node::mSearchPath [protected]

Search path of PC library.

Remarks:
This is own attribute of this class.

Definition at line 139 of file PCMNode.h.

Referenced by Node().


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