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
observableSelection.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/observableSelection.h"
2#ifndef UFE_OBSERVABLESELECTION_H
3#define UFE_OBSERVABLESELECTION_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 "selection.h"
14#include "subject.h"
15
16#include <memory> // unique_ptr
17
19
20class SelectionCompositeNotification;
21
23
32{
33public:
34
37
40
57
60 bool inCompositeNotification() const override;
61
62protected:
63
68 void beginNotificationGuard() override;
69 void endNotificationGuard() override;
71
76 void postAppend(const SceneItem::Ptr& item) override;
77
82 void postRemove(const SceneItem::Ptr& item) override;
83
90 const SceneItem::Ptr& position, const SceneItem::Ptr& item
91 ) override;
92
94 void postClear(const Selection& previous) override;
95
97 void postReplaceWith(const Selection& previous) override;
98
99private:
100
102
104 std::unique_ptr<SelectionCompositeNotification> fCompositeNotification;
105};
106
107}
108
109#endif /* UFE_OBSERVABLESELECTION_H */
Observable selection for objects in the scene.
ObservableSelection(const ObservableSelection &)
void postRemove(const SceneItem::Ptr &item) override
ObservableSelection & operator=(const Selection &)
void beginNotificationGuard() override
void endNotificationGuard() override
ObservableSelection & operator=(Selection &&rhs)
ObservableSelection(const Selection &)
ObservableSelection & operator=(ObservableSelection &&rhs)
ObservableSelection(Selection &&)
void postReplaceWith(const Selection &previous) override
Method called after replacing the observable selection.
void postAppend(const SceneItem::Ptr &item) override
ObservableSelection & operator=(const ObservableSelection &)
void postClear(const Selection &previous) override
Method called after clearing the observable selection.
~ObservableSelection() override
Destructor.
std::unique_ptr< SelectionCompositeNotification > fCompositeNotification
Composite notification, when within the scope of a guard.
ObservableSelection(ObservableSelection &&)
ObservableSelection()
Constructor.
bool inCompositeNotification() const override
void postInsert(const SceneItem::Ptr &position, const SceneItem::Ptr &item) override
std::shared_ptr< SceneItem > Ptr
Definition: sceneItem.h:45
Selection list for objects in the scene.
Definition: selection.h:29
Observer pattern Subject class.
Definition: subject.h:42
#define UFE_NS_DEF
Definition: ufe.h:36
#define UFE_SDK_DECL
Definition: ufeExport.h:35