HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
timeInputNode.h
Go to the documentation of this file.
1 //
2 // Copyright 2025 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
7 #ifndef PXR_EXEC_EF_TIME_INPUT_NODE_H
8 #define PXR_EXEC_EF_TIME_INPUT_NODE_H
9 
10 /// \file
11 
12 #include "pxr/pxr.h"
13 
14 #include "pxr/exec/ef/api.h"
15 
16 #include "pxr/exec/vdf/rootNode.h"
17 
19 
20 ///////////////////////////////////////////////////////////////////////////////
21 ///
22 /// \class EfTimeInputNode
23 ///
24 /// \brief A root node which supplies a value for time.
25 ///
27 {
28 public:
29 
30  /// Constructor
31  ///
32  EF_API
33  EfTimeInputNode(VdfNetwork *network);
34 
35  /// Returns \c true if the given node is an EfTimeInputNode. This method is
36  /// an accelerated alternative to IsA<EfTimeInputNode>() or dynamic_cast.
37  ///
38  static bool IsATimeInputNode(const VdfNode &node) {
39  return node.GetNumInputs() == 0 && node.IsA<EfTimeInputNode>();
40  }
41 
42 private:
43 
44  // Only a network is allowed to delete nodes.
45  virtual ~EfTimeInputNode();
46 };
47 
49 
50 #endif
#define PXR_NAMESPACE_OPEN_SCOPE
Definition: pxr.h:73
bool IsA() const
Definition: node.h:147
Definition: node.h:52
#define EF_API_TYPE
Definition: api.h:26
size_t GetNumInputs() const
Definition: node.h:289
A root node which supplies a value for time.
Definition: timeInputNode.h:26
static bool IsATimeInputNode(const VdfNode &node)
Definition: timeInputNode.h:38
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74
#define EF_API
Definition: api.h:25