1 | /**************************************************************************************** |
2 | |
3 | Copyright (C) 2015 Autodesk, Inc. |
4 | All rights reserved. |
5 | |
6 | Use of this software is subject to the terms of the Autodesk license agreement |
7 | provided at the time of installation or download, or which otherwise accompanies |
8 | this software in either electronic or hard copy form. |
9 | |
10 | ****************************************************************************************/ |
11 | |
12 | //! \file fbxpropertyentryview.h |
13 | #ifndef _FBXSDK_SCENE_SHADING_PROPERTY_ENTRY_VIEW_H_ |
14 | #define _FBXSDK_SCENE_SHADING_PROPERTY_ENTRY_VIEW_H_ |
15 | |
16 | #include <fbxsdk/fbxsdk_def.h> |
17 | |
18 | #include <fbxsdk/scene/shading/fbxentryview.h> |
19 | #include <fbxsdk/scene/shading/fbxbindingtableentry.h> |
20 | |
21 | #include <fbxsdk/fbxsdk_nsbegin.h> |
22 | |
23 | /** FbxPropertyEntryView represents property entry in entry tables. |
24 | * The property can be used as source or destination for the binding entry. |
25 | * Use this class to manipulate binding table's attributes. |
26 | * |
27 | * \code Here is a code snippet to show how it used. |
28 | * FbxProperty lProp; |
29 | * FbxBindingTable lTable; |
30 | * FbxBindingTableEntry& lEntry = lBindingTable.AddNewEntry(); |
31 | * FbxPropertyEntryView lView( lEntry, true, true); |
32 | * lView.SetProperty( lProp.GetName()); |
33 | * \endcode |
34 | * |
35 | * \see FbxBindingTableEntry and FbxBindingTable. |
36 | * |
37 | * \nosubgrouping |
38 | */ |
39 | class FBXSDK_DLL FbxPropertyEntryView : public FbxEntryView |
40 | { |
41 | public: |
42 | |
43 | /** Name of the entry type used in the binding entry. |
44 | * It should be "FbxPropertyEntry" in this case. |
45 | */ |
46 | static const char* sEntryType; |
47 | |
48 | /** |
49 | * \name Constructor and Destructor. |
50 | */ |
51 | //@{ |
52 | /** Constructor. |
53 | * \param pEntry The binding table entry to create the entry view for. |
54 | * \param pAsSource \c true to create the entry view as source, \c false as destination. |
55 | * \param pCreate \c true to create the entry view, \c false otherwise. |
56 | */ |
57 | FbxPropertyEntryView( FbxBindingTableEntry* pEntry, bool pAsSource, bool pCreate = false ); |
58 | |
59 | //! Destructor. |
60 | ~FbxPropertyEntryView(); |
61 | //@} |
62 | |
63 | /** Get the property name from the binding entry. |
64 | * \return The property name. |
65 | */ |
66 | const char* GetProperty() const; |
67 | |
68 | /** Set the property name to the binding entry. |
69 | * \param pPropertyName The property name to set. |
70 | */ |
71 | void SetProperty(const char* pPropertyName); |
72 | |
73 | /** Get the entry type. |
74 | * \return Entry type as string "FbxPropertyEntry". |
75 | * \remarks Always use EntryType() to get the right entry type. |
76 | */ |
77 | virtual const char* EntryType() const; |
78 | }; |
79 | |
80 | #include <fbxsdk/fbxsdk_nsend.h> |
81 | |
82 | #endif /* _FBXSDK_SCENE_SHADING_PROPERTY_ENTRY_VIEW_H_ */ |
83 | |