ufe  4.2
Universal Front End is a DCC-agnostic component that will allow a DCC to browse and edit data in multiple data models
attributeDef.h
Go to the documentation of this file.
1 #line 1 "S:/jenkins/workspace/ECP/ufe/ufe-full-python3.10-windows/ufe/include/attributeDef.h"
2 #ifndef _ufe_attributeDef
3 #define _ufe_attributeDef
4 
5 // =======================================================================
6 // Copyright 2022 Autodesk, Inc. All rights reserved.
7 //
8 // This computer source code and related instructions and comments are the
9 // unpublished confidential and proprietary information of Autodesk, Inc.
10 // and are protected under applicable copyright and trade secret law. They
11 // may not be disclosed to, copied or used by any third party without the
12 // prior written consent of Autodesk, Inc.
13 // =======================================================================
14 
15 #include "common/ufeExport.h"
16 #include "value.h"
17 
18 #include <memory>
19 #include <string>
20 
21 UFE_NS_DEF {
22 
31 {
32 public:
33  typedef std::shared_ptr<const AttributeDef> ConstPtr;
34  enum IOType { INPUT_ATTR, OUTPUT_ATTR };
35 
37  virtual ~AttributeDef();
38 
40  virtual std::string name() const = 0;
41 
43  virtual std::string type() const = 0;
44 
46  virtual std::string defaultValue() const = 0;
47 
49  virtual IOType ioType() const = 0;
50 
56  virtual Value getMetadata(const std::string& key) const = 0;
57 
59  virtual bool hasMetadata(const std::string& key) const = 0;
60 
61 }; // end class AttributeDef
62 
63 } // end namespace
64 
65 #endif /* _ufe_attributeDef */
std::string string(const Path &path)
Definition of macros for symbol visibility.
std::shared_ptr< const AttributeDef > ConstPtr
Definition: attributeDef.h:33
Value class that can hold a wide set of types.
Definition: value.h:34
#define UFE_NS_DEF
Definition: ufe.h:35
Base class for Attribute definitions.
Definition: attributeDef.h:30
#define UFE_SDK_DECL
Definition: ufeExport.h:36