ufe 7.0
Universal Front End is a DCC-agnostic component that will allow a DCC to browse and edit data in multiple data models
connectionHandler.h
Go to the documentation of this file.
1#line 1 "D:/Jenkins/workspace/EMS/ECG/ufe/full/ufe-full-python3.13-windows/ufe/include/connectionHandler.h"
2#ifndef UFE_CONNECTIONHANDLER_H
3#define UFE_CONNECTIONHANDLER_H
4
5// ===========================================================================
6// Copyright 2025 Autodesk, Inc. All rights reserved.
7//
8// The use of this software is subject to the Autodesk Terms of Use or other
9// license agreement provided at the time of installation or download, or
10// which otherwise accompanies this software.
11// ===========================================================================
12
13#include "common/ufeExport.h"
14
15#include "connections.h"
16#include "sceneItem.h"
17
18#include <memory>
19
21
22class UndoableCommand;
23class ConnectionResultUndoableCommand;
24
38{
39public:
40 typedef std::shared_ptr<ConnectionHandler> Ptr;
41
48
56 virtual Connections::Ptr sourceConnections(const SceneItem::Ptr &item) const = 0;
57
62
75 Connection::Ptr connect(const AttributeInfo &srcInfo, const AttributeInfo &dstInfo) const;
76
87 Connection::Ptr connect(const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const;
89
94
104 void disconnect(const AttributeInfo &srcInfo, const AttributeInfo &dstInfo) const;
105
114 void disconnect(const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const;
116
126 virtual std::shared_ptr<ConnectionResultUndoableCommand> createConnectionCmd(
127 const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const = 0;
128
135 virtual std::shared_ptr<UndoableCommand> deleteConnectionCmd(
136 const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const = 0;
137};
138}
139
140#endif /* UFE_CONNECTIONHANDLER_H */
std::shared_ptr< Attribute > Ptr
Definition: attribute.h:39
This class keeps information of an attribute.
Definition: attributeInfo.h:33
Factory base class for connection interface.
virtual Connections::Ptr sourceConnections(const SceneItem::Ptr &item) const =0
Get the source Connections on the given SceneItem.
Connection::Ptr connect(const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const
Connects a source attribute to a destination attribute.
virtual std::shared_ptr< UndoableCommand > deleteConnectionCmd(const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const =0
ConnectionHandler(const ConnectionHandler &)=default
Default copy constructor.
virtual ~ConnectionHandler()
Destructor.
void disconnect(const AttributeInfo &srcInfo, const AttributeInfo &dstInfo) const
Disconnects a source attribute from a destination attribute.
ConnectionHandler()
Constructor.
virtual std::shared_ptr< ConnectionResultUndoableCommand > createConnectionCmd(const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const =0
void disconnect(const Attribute::Ptr &srcAttr, const Attribute::Ptr &dstAttr) const
Disconnects a source attribute from a destination attribute.
std::shared_ptr< ConnectionHandler > Ptr
Connection::Ptr connect(const AttributeInfo &srcInfo, const AttributeInfo &dstInfo) const
Connects a source attribute to a destination attribute.
std::shared_ptr< Connection > Ptr
Definition: connection.h:32
std::shared_ptr< Connections > Ptr
Definition: connections.h:28
std::shared_ptr< SceneItem > Ptr
Definition: sceneItem.h:45
#define UFE_NS_DEF
Definition: ufe.h:36
Definition of macros for symbol visibility.
#define UFE_SDK_DECL
Definition: ufeExport.h:35