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.
30  virtual STY_TargetMatchStatus
32  virtual STY_StyleSheetHandle
34  virtual UT_StringHolder
35  getSourceLocation() const;
36 
37 private:
38  bool matchesTagOrBundleTarget(const STY_TargetHandle &target) const;
40  matchesComponentTarget(const STY_TargetHandle &target) const;
42  matchesGeoObjTarget(const STY_TargetHandle &target) const;
43 
44 private:
45  /// Full path and name of the geometry object. Store them both so we don't
46  /// need to recreate the name from the path repeatedly.
47  const UT_StringHolder myObjectPath;
48  UT_StringHolder myObjectName;
49 
50  /// Tags set on the geometry object.
51  const UT_TagListPtr myTags;
52 
53  /// Reference to bundle data.
54  const GSTY_BundleMap &myBundles;
55 
56  /// The style sheet provided by this object.
57  STY_StyleSheetHandle myStyleSheet;
58 };
59 #endif
60 
#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:3340
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:1666
virtual STY_StyleSheetHandle getPostFilterStyleSheet() const
Represents a geometry object whose primitives are being overriden.