HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GU_AgentSubjectShape.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: GU_AgentSubjectShape.h ( GSTY Library, C++)
7  *
8  * COMMENTS:
9  */
10 
11 #ifndef __GU_AgentSubjectShape__
12 #define __GU_AgentSubjectShape__
13 
14 #include "GU_API.h"
15 #include "GU_AgentLayer.h"
16 #include <STY/STY_SubjectNamed.h>
17 
18 class GU_PrimPacked;
19 
21 {
22 public:
23  // The 'agent_prim' arg is optional since it's used only for a convenience
24  // shortcut to have shape implicitly provide script binding data from agent.
25  // Otherwise we would have to employ preBinding keyword explicitly.
27  const GU_PrimPacked *agent_prim = NULL);
28 
30  matchesStyleTarget(const STY_TargetHandle &target) const override;
31 
34  const UT_StringHolder &data_name) const override;
35 
36 protected:
38  getSubjectName() const override
39  {
40  return myShape->shapeName();
41  }
42 
43  int64
44  getSubjectID() const override
45  {
46  return myShape->shapeId();
47  }
48 
49 private:
50  const GU_AgentLayer::ShapeBinding *myShape;
51  const GU_PrimPacked *myAgentPrim;
52 };
53 
54 #endif
55 
int64 getSubjectID() const override
virtual STY_TargetMatchStatus matchesStyleTarget(const STY_TargetHandle &target) const =0
Returns the information wheter the subject matches the given target.
Contains information about the style subject match to the style target.
virtual STY_BindingDataSourceHandle getOverrideBindingDataSource(const UT_StringHolder &data_name) const
long long int64
Definition: SYS_Types.h:116
GLenum target
Definition: glcorearb.h:1667
#define GU_API
Definition: GU_API.h:14
UT_StringHolder getSubjectName() const override
Helper class for subjects that have names and IDs.