Ion
|
NodeGraphHandler serves files to display Ion node graphs as text or HTML using the gfxutils::Printer class. More...
#include "nodegraphhandler.h"
Public Member Functions | |
NodeGraphHandler () | |
~NodeGraphHandler () override | |
void | SetFrame (const gfxutils::FramePtr &frame) |
Sets/returns the Frame object used to access the current frame. More... | |
const gfxutils::FramePtr & | GetFrame () const |
void | AddNode (const gfx::NodePtr &node) |
Adds a Node to track if it is not NULL or already tracked. More... | |
bool | RemoveNode (const gfx::NodePtr &node) |
Removes a Node from being tracked. More... | |
bool | IsNodeTracked (const gfx::NodePtr &node) const |
Returns true if the given Node is being tracked. More... | |
size_t | GetTrackedNodeCount () const |
Returns the number of nodes being tracked. (Useful for testing.) More... | |
const std::string | HandleRequest (const std::string &path, const HttpServer::QueryMap &args, std::string *content_type) override |
The HandleRequest() function is passed the path (relative to its base path) of the file or directory to serve, and any query arguments associated with the request. More... | |
virtual const WebsocketPtr | ConnectWebsocket (const std::string &path, const QueryMap &args) |
By default, RequestHandlers don't support websocket connections. More... | |
const std::string & | GetBasePath () const |
Returns the path this handler is registered at. More... | |
const AllocatorPtr & | GetAllocator () const |
Returns the Allocator that was used for the instance. More... | |
const AllocatorPtr & | GetNonNullAllocator () const |
Return our allocator, or the default allocator if the instance was declared on the stack. More... | |
const AllocatorPtr & | GetAllocatorForLifetime (AllocationLifetime lifetime) const |
Convenience function that returns the Allocator to use to allocate an object with a specific lifetime. More... | |
void * | operator new (size_t size) |
The standard no-parameter new operator uses the default Allocator. More... | |
void * | operator new (size_t size, AllocationLifetime lifetime) |
This overloaded version of the new operator uses the AllocationManager's default Allocator for the specified lifetime. More... | |
void * | operator new (size_t size, const AllocatorPtr &allocator) |
This overloaded version of the new operator takes the Allocator to use directly as a parameter. More... | |
void * | operator new (size_t size, const AllocatorPtr &allocator, void *ptr) |
Special operator new for using placement new with Allocatables. More... | |
void * | operator new (size_t size, void *ptr) |
The placement new operator is defined conventionally. More... | |
void | operator delete (void *ptr) |
Define the delete operator to use specialized functions dealing with an Allocator. More... | |
void | operator delete (void *ptr, AllocationLifetime lifetime) |
Windows requires these (or it issues C4291 warnings). More... | |
void | operator delete (void *ptr, const AllocatorPtr &allocator) |
void | operator delete (void *ptr, void *ptr2) |
The placement delete operator does nothing, as usual. More... | |
int | GetRefCount () const |
GetRefCount() is part of the interface necessary for SharedPtr. More... | |
NodeGraphHandler serves files to display Ion node graphs as text or HTML using the gfxutils::Printer class.
/ or /index.html - Display interface /update - Updates graphs for all currently-tracked nodes.
Definition at line 37 of file nodegraphhandler.h.
ion::remote::NodeGraphHandler::NodeGraphHandler | ( | ) |
Definition at line 38 of file nodegraphhandler.cc.
|
override |
Definition at line 43 of file nodegraphhandler.cc.
void ion::remote::NodeGraphHandler::AddNode | ( | const gfx::NodePtr & | node | ) |
Adds a Node to track if it is not NULL or already tracked.
Definition at line 45 of file nodegraphhandler.cc.
References ion::base::SharedPtr< T >::Get(), and IsNodeTracked().
|
inlinevirtualinherited |
By default, RequestHandlers don't support websocket connections.
Definition at line 86 of file httpserver.h.
|
inlineinherited |
Returns the Allocator that was used for the instance.
This will be NULL if the instance was declared on the stack or created with normal placement new.
Definition at line 68 of file allocatable.h.
References allocator_.
Referenced by ion::base::DataContainer::CreateAndCopy(), ion::text::DynamicFontImage::FindContainingImageDataIndex(), and ion::text::DynamicFontImage::FindImageDataIndex().
|
inlineinherited |
Convenience function that returns the Allocator to use to allocate an object with a specific lifetime.
Definition at line 78 of file allocatable.h.
References ion::base::Allocator::GetAllocatorForLifetime().
Referenced by ion::text::BasicBuilder::BuildVertexData(), ion::text::OutlineBuilder::BuildVertexData(), ion::gfxutils::ShaderManager::CreateShaderProgram(), ion::text::DynamicFontImage::FindContainingImageDataIndex(), ion::text::DynamicFontImage::FindImageDataIndex(), ion::gfx::Renderer::Renderer(), and ion::gfx::UpdateStateTable().
|
inlineinherited |
Returns the path this handler is registered at.
Definition at line 92 of file httpserver.h.
|
inline |
Definition at line 46 of file nodegraphhandler.h.
|
inlineinherited |
Return our allocator, or the default allocator if the instance was declared on the stack.
Definition at line 72 of file allocatable.h.
References allocator_, and ion::base::AllocationManager::GetNonNullAllocator().
|
inlineinherited |
GetRefCount() is part of the interface necessary for SharedPtr.
Definition at line 34 of file shareable.h.
Referenced by ion::base::Notifier::RemoveReceiver().
|
inline |
Returns the number of nodes being tracked. (Useful for testing.)
Definition at line 59 of file nodegraphhandler.h.
|
overridevirtual |
The HandleRequest() function is passed the path (relative to its base path) of the file or directory to serve, and any query arguments associated with the request.
The handler should return an empty string if it cannot handle the request. The handler may optionally set a specific content type to be returned in the response headers. If the handler does not set a content type then a suitable one will be chosen based on the extension of the requested file.
Implements ion::remote::HttpServer::RequestHandler.
Definition at line 66 of file nodegraphhandler.cc.
References ion::base::EndsWith(), ion::base::ZipAssetManager::GetFileData(), and ion::base::IsInvalidReference().
bool ion::remote::NodeGraphHandler::IsNodeTracked | ( | const gfx::NodePtr & | node | ) | const |
Returns true if the given Node is being tracked.
Definition at line 62 of file nodegraphhandler.cc.
Referenced by AddNode().
|
inlineinherited |
Define the delete operator to use specialized functions dealing with an Allocator.
Definition at line 109 of file allocatable.h.
|
inlineinherited |
Windows requires these (or it issues C4291 warnings).
Definition at line 112 of file allocatable.h.
|
inlineinherited |
Definition at line 113 of file allocatable.h.
|
inlineinherited |
The placement delete operator does nothing, as usual.
Definition at line 118 of file allocatable.h.
|
inlineinherited |
The standard no-parameter new operator uses the default Allocator.
Definition at line 84 of file allocatable.h.
|
inlineinherited |
This overloaded version of the new operator uses the AllocationManager's default Allocator for the specified lifetime.
Definition at line 88 of file allocatable.h.
|
inlineinherited |
This overloaded version of the new operator takes the Allocator to use directly as a parameter.
If the Allocator pointer is NULL, this uses the default Allocator.
Definition at line 95 of file allocatable.h.
|
inlineinherited |
Special operator new for using placement new with Allocatables.
Definition at line 100 of file allocatable.h.
|
inlineinherited |
The placement new operator is defined conventionally.
Definition at line 105 of file allocatable.h.
bool ion::remote::NodeGraphHandler::RemoveNode | ( | const gfx::NodePtr & | node | ) |
Removes a Node from being tracked.
If the Node was not added, this does nothing but return false.
Definition at line 50 of file nodegraphhandler.cc.
References ion::base::SharedPtr< T >::Get().
|
inline |
Sets/returns the Frame object used to access the current frame.
If the Frame is not NULL, the header for the output will contain the frame counter.
Definition at line 45 of file nodegraphhandler.h.