ufe 5.5
Universal Front End is a DCC-agnostic component that will allow a DCC to browse and edit data in multiple data models
nodeDefHandler.h
Go to the documentation of this file.
1#line 1 "S:/jenkins/workspace/ECP/ufe/ufe-full-python3.11-windows/ufe/include/nodeDefHandler.h"
2#ifndef _nodeDefHandler
3#define _nodeDefHandler
4// ===========================================================================
5// Copyright 2022 Autodesk, Inc. All rights reserved.
6//
7// Use of this software is subject to the terms of the Autodesk license
8// agreement provided at the time of installation or download, or which
9// otherwise accompanies this software in either electronic or hard copy form.
10// ===========================================================================
11
12#include "common/ufeExport.h"
13#include "rtid.h"
14#include "sceneItem.h"
15#include "nodeDef.h"
16
17#include <memory>
18
20
22
37{
38public:
39 typedef std::shared_ptr<NodeDefHandler> Ptr;
40
41 static constexpr char kNodeDefCategoryAll[] = "All";
42
46 NodeDefHandler(const NodeDefHandler&) = default;
48 virtual ~NodeDefHandler();
49
51 // nullptr if no such node definition can be found.
52 virtual Ufe::NodeDef::Ptr definition(const Ufe::SceneItem::Ptr& item) const = 0;
54 // if no such node definition can be found.
55 virtual Ufe::NodeDef::Ptr definition(const std::string& type) const = 0;
57 virtual Ufe::NodeDefs definitions(const std::string& category=kNodeDefCategoryAll) const = 0;
58};
59
60}
61
62#endif /* _nodeDefHandler */
Base class for NodeDefHandler interface.
NodeDefHandler()
Constructor.
NodeDefHandler(const NodeDefHandler &)=default
Default copy constructor.
virtual Ufe::NodeDefs definitions(const std::string &category=kNodeDefCategoryAll) const =0
Returns the available node definitions for the provided category.
std::shared_ptr< NodeDefHandler > Ptr
virtual Ufe::NodeDef::Ptr definition(const std::string &type) const =0
Returns the node definition interface for a provided type. Returns a nullptr.
virtual ~NodeDefHandler()
Destructor.
virtual Ufe::NodeDef::Ptr definition(const Ufe::SceneItem::Ptr &item) const =0
Returns the node definition interface for a provided SceneItem. Returns a.
std::shared_ptr< NodeDef > Ptr
Definition: nodeDef.h:40
std::shared_ptr< SceneItem > Ptr
Definition: sceneItem.h:44
std::string string(const Path &path)
std::vector< NodeDef::Ptr > NodeDefs
Definition: nodeDef.h:142
#define UFE_NS_DEF
Definition: ufe.h:35
Definition of macros for symbol visibility.
#define UFE_SDK_DECL
Definition: ufeExport.h:36