HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SIM_PointMapping.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: SIM_PointMapping.h ( SIM Library, C++)
7  *
8  * COMMENTS:
9  * This class builds a mapping from some point attribute value to
10  * the point number that has that attribute value.
11  */
12 
13 #ifndef __SIM_PointMapping_h__
14 #define __SIM_PointMapping_h__
15 
16 #include "SIM_API.h"
17 #include <UT/UT_Map.h>
18 #include "SIM_DataUtils.h"
19 #include "SIM_OptionsUser.h"
20 
21 /// This class holds a mapping from some point attribute to point numbers
22 /// on the parent geometry data. The attribute must be a single integer.
24  public SIM_OptionsUser
25 {
26 public:
27  /// The name of the attribute to use for our mapping.
29 
30  /// The name of the attribute to map.
31  GA_Index getPointWithAttributeValue(int attribvalue) const;
32 
33 protected:
34  explicit SIM_PointMapping(const SIM_DataFactory *factory);
35  ~SIM_PointMapping() override;
36 
37  void initializeSubclass() override;
38  int64 getMemorySizeSubclass() const override;
39  bool getIsAlternateRepresentationSubclass() const override;
41  const SIM_Data &) override;
42 
43 private:
44  UT_Map<int, GA_Index> myMapping;
45 
48  SIM_Data,
49  "Point Mapping",
51 };
52 
53 #endif
#define DECLARE_STANDARD_GETCASTTOTYPE()
Definition: SIM_DataUtils.h:45
virtual bool getIsAlternateRepresentationSubclass() const
#define GETSET_DATA_FUNCS_S(DataName, FuncName)
virtual int64 getMemorySizeSubclass() const
#define DECLARE_DATAFACTORY(DataClass, SuperClass, Description, DopParms)
Definition: SIM_DataUtils.h:58
#define SIM_NAME_ATTRIBUTENAME
Definition: SIM_Names.h:74
long long int64
Definition: SYS_Types.h:116
GA_Size GA_Index
Define the strictness of GA_Offset/GA_Index.
Definition: GA_Types.h:633
#define SIM_API
Definition: SIM_API.h:10
virtual void initAlternateRepresentationSubclass(const SIM_Data &)
static const SIM_DopDescription * getEmptyDopDescription()
A DOP description that says not to create an automatic DOP.
virtual void initializeSubclass()