20 MAQUINA_IGNORE_WARNINGS_BEGIN
25 MAQUINA_IGNORE_WARNINGS_END
28 #include <unordered_map> 37 class ModificationContext;
58 time_varying = 1 << 1,
81 std::string name()
const;
84 std::string document_path()
const;
87 std::string nice_name()
const;
90 std::string type_name()
const;
93 std::string description()
const;
96 void set_description(
const std::string& description );
99 void set_default_value(
const Value& value);
108 static const int32_t AllFrames = int32_t(0x80000000);
112 Value default_value()
const;
117 void force_varying(
bool force );
127 bool as_bool()
const;
135 float as_float()
const;
139 double as_double()
const;
143 const std::string& as_string()
const;
146 std::wstring as_wstring()
const;
190 std::shared_ptr<const class UserData> as_user_data()
const;
193 void set_value(
const Value& value,
bool undo_stack=
false);
211 bool is_connected()
const;
214 bool is_internal()
const;
217 bool is_channel()
const;
220 void set_channel(
bool channel );
223 bool is_constant()
const;
226 bool is_evaluated()
const;
229 bool is_keyable()
const;
232 bool is_main_plug()
const;
236 bool is_auto_connect()
const;
240 bool is_dynamic()
const;
243 bool is_animable()
const;
246 bool is_mutable()
const;
265 void connect(
const Plug& src,
266 bool undo_stack=
false,
267 bool serialize=
false);
270 bool undo_stack=
false);
280 void add_valued_dependency(
const Plug& dependence, int32_t index = -1,
281 int32_t time_offset = 0,
bool undo_stack =
false,
bool serialize =
false);
290 void remove_valued_dependency(
const Plug& dependence,
bool undo_stack =
true );
297 void remove_valued_dependency( uint32_t index,
bool undo_stack =
true );
301 void remove_all_valued_dependencies(
bool undo_stack =
true );
303 std::vector<Plug> notification_dependencies();
304 void add_notification_dependency(
const Plug& dependence,
305 bool serialize=
false);
306 void remove_notification_dependency(
const Plug& dependence,
308 void remove_all_notification_dependencies(
bool notify=
true);
310 std::vector<Plug> back_dependencies();
311 size_t back_dependencies_count();
314 std::vector<Plug> valued_dependencies();
315 uint32_t valued_dependencies_count();
320 bool has_valued_dependency(
const Plug& plug );
330 void touch(
int first_frame,
int last_frame,
bool rest);
333 void set_to_default();
336 uint32_t flags()
const;
339 void set_flags(uint32_t flags);
351 public std::iterator<
352 std::forward_iterator_tag,
353 Plug, std::ptrdiff_t, Plug, Plug >
382 Outputs outputs()
const;
385 std::vector<Plug> channels();
387 bool has_node()
const;
393 std::vector<Plug> walk_down()
const;
396 static bool validate_name(
const char* plug_name);
402 std::shared_ptr<NodeDelegate> node_delegate()
const;
410 std::unordered_map<float, Key> key_frames()
const;
412 std::unordered_map<float, Key> key_frames_in_layer(
const Node& layer)
const;
415 std::shared_ptr<Impl> _owner;
419 Plug(
const std::shared_ptr<Impl>& node,
void *plug)
426 # include <functional> 432 std::size_t
operator()( const ::maquina::Plug& plug )
const noexcept
434 return reinterpret_cast<size_t>( plug._plug );
Outputs(void *plug) noexcept
Definition: Plug.h:371
Definition: ImathBox.h:71
Status
Status of the plug.
Definition: Plug.h:249
MAQUINA_EXPORT Node reference(Node &root, const std::wstring &filepath, const std::string &reference_root_name="")
Reference the content of a file into the project.
DependencyFlags
Dependency flags to pass to add_value_dependency.
Definition: Plug.h:67
Definition: ImathFrame.h:42
Definition: ImathColor.h:120
Definition: ImathFrame.h:43
void * _plug
Definition: Plug.h:416
A Plug accessor to the outputs.
Definition: Plug.h:347
Definition: ImathVec.h:63
This version of the SDK is unstable, i-e, it may change with no warning.
Definition: AddCurveAction.h:20
Definition: ModificationContext.h:21
std::size_t operator()(const ::maquina::Plug &plug) const noexcept
Definition: Plug.h:432
bool selected
Definition: Plug.h:406
EvaluationMode
The value evaluation modes.
Definition: Plug.h:102
Definition: ImathQuat.h:71
#define MAQUINA_EXPORT
Definition: Export.h:31
A node plug.
Definition: Plug.h:52
bool operator!=(const C *str, const StringViewBase< C, STDS > &sv) noexcept
Definition: StringView.h:305
Flags
Definition: Plug.h:55
Definition: ImathVec.h:61
bool operator==(const C *str, const StringViewBase< C, STDS > &sv) noexcept
Definition: StringView.h:273
bool operator!=(const Plug &o) const
Definition: Plug.h:399
static const QueryContext at_current_frame
Query at the current frame.
Definition: QueryContext.h:32
Color4< T > operator*(S a, const Color4< T > &v)
Definition: ImathColor.h:727
bool operator==(const Plug &o) const
Definition: Plug.h:398
Definition: QueryContext.h:21
Base class of all Rumba nodes.
Definition: Node.h:36
Base class of all Rumba values.
Definition: Value.h:34