HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GSTY_SubjectGeoObject.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: GSTY_SubjectGeoObject.h ( GSTY Library, C++)
7  *
8  * COMMENTS:
9  */
10 
11 #ifndef __GSTY_SubjectGeoObject__
12 #define __GSTY_SubjectGeoObject__
13 
14 #include "GSTY_API.h"
15 #include <STY/STY_Subject.h>
16 #include <UT/UT_TagManager.h>
17 
18 class GSTY_BundleMap;
19 
20 /// Represents a geometry object whose primitives are being overriden.
22 {
23 public:
25  const UT_TagListPtr &tags,
26  const GSTY_BundleMap &bundles,
27  const UT_StringHolder &stylesheet);
28 
29  /// Base class overrides.
32  const STY_TargetHandle &target) const override;
34  getPostFilterStyleSheet() const override;
36  getSourceLocation() const override;
37 
38 private:
39  bool matchesTagOrBundleTarget(const STY_TargetHandle &target) const;
41  matchesComponentTarget(const STY_TargetHandle &target) const;
43  matchesGeoObjTarget(const STY_TargetHandle &target) const;
44 
45 private:
46  /// Full path and name of the geometry object. Store them both so we don't
47  /// need to recreate the name from the path repeatedly.
48  const UT_StringHolder myObjectPath;
49  UT_StringHolder myObjectName;
50 
51  /// Tags set on the geometry object.
52  const UT_TagListPtr myTags;
53 
54  /// Reference to bundle data.
55  const GSTY_BundleMap &myBundles;
56 
57  /// The style sheet provided by this object.
58  STY_StyleSheetHandle myStyleSheet;
59 };
60 #endif
61 
#define GSTY_API
Definition: GSTY_API.h:10
virtual STY_TargetMatchStatus matchesStyleTarget(const STY_TargetHandle &target) const =0
Returns the information wheter the subject matches the given target.
GLsizei const GLchar *const * path
Definition: glcorearb.h:3341
Contains information about the style subject match to the style target.
virtual UT_StringHolder getSourceLocation() const
Wrapper around hboost::intrusive_ptr.
GLenum target
Definition: glcorearb.h:1667
virtual STY_StyleSheetHandle getPostFilterStyleSheet() const
Represents a geometry object whose primitives are being overriden.