OmniSciDB  c0231cc57d
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RenderQueryOptions Class Reference

#include <RenderQueryOptions.h>

Public Types

enum  FlagBits { kLegacyHitTestLogic = 1u << 0, kInjectRowIdForHitTesting = 1u << 1, kRequiresPhysicalTables = 1u << 2, kInjectRowIdForPPLL = 1u << 3 }
 

Public Member Functions

bool shouldAlterRA () const
 
bool useLegacyHitTestLogic () const
 
bool injectRowIdForHitTesting () const
 
bool isHitTestingEnabled () const
 
bool injectRowIdForPPLL () const
 
bool requiresPhysicalTables () const
 
void setFlags (FlagBits flags_to_set)
 
void clearFlags (FlagBits flags_to_clear)
 
void clearAllFlags ()
 
bool operator== (const RenderQueryOptions &other) const
 
bool operator!= (const RenderQueryOptions &other) const
 

Private Attributes

uint32_t flags_ = 0u
 

Detailed Description

Definition at line 19 of file RenderQueryOptions.h.

Member Enumeration Documentation

Enumerator
kLegacyHitTestLogic 
kInjectRowIdForHitTesting 
kRequiresPhysicalTables 
kInjectRowIdForPPLL 

Definition at line 21 of file RenderQueryOptions.h.

21  {
22  // enableHitTesting field not available in Vega
23  // attempt to support it automatically
24  // requires physical tables and will enable kInjectRowIdForHitTesting for non-insitu
25  // renders
26  kLegacyHitTestLogic = 1u << 0,
27  // automatically inject rowid for projection queries.
28  // For example, this should be true when hit-testing is enabled.
29  kInjectRowIdForHitTesting = 1u << 1,
30  // physical tables are required in the results
31  // For example, this should be true when hit-testing is enabled.
32  kRequiresPhysicalTables = 1u << 2,
33  // automatically inject rowid for ppll poly rendering.
34  kInjectRowIdForPPLL = 1u << 3,
35  };

Member Function Documentation

void RenderQueryOptions::clearAllFlags ( )
inline

Definition at line 55 of file RenderQueryOptions.h.

References flags_.

55 { flags_ = 0u; }
void RenderQueryOptions::clearFlags ( FlagBits  flags_to_clear)
inline

Definition at line 54 of file RenderQueryOptions.h.

References flags_.

54 { flags_ &= (~flags_to_clear); }
bool RenderQueryOptions::injectRowIdForHitTesting ( ) const
inline

Definition at line 42 of file RenderQueryOptions.h.

References flags_.

Referenced by isHitTestingEnabled().

42  {
43  return flags_ & FlagBits::kInjectRowIdForHitTesting;
44  }

+ Here is the caller graph for this function:

bool RenderQueryOptions::injectRowIdForPPLL ( ) const
inline

Definition at line 48 of file RenderQueryOptions.h.

References flags_.

48 { return flags_ & FlagBits::kInjectRowIdForPPLL; }
bool RenderQueryOptions::isHitTestingEnabled ( ) const
inline

Definition at line 45 of file RenderQueryOptions.h.

References injectRowIdForHitTesting(), and useLegacyHitTestLogic().

45  {
47  }
bool useLegacyHitTestLogic() const
bool injectRowIdForHitTesting() const

+ Here is the call graph for this function:

bool RenderQueryOptions::operator!= ( const RenderQueryOptions other) const
inline

Definition at line 60 of file RenderQueryOptions.h.

References operator==().

60 { return !operator==(other); }
bool operator==(const RenderQueryOptions &other) const

+ Here is the call graph for this function:

bool RenderQueryOptions::operator== ( const RenderQueryOptions other) const
inline

Definition at line 57 of file RenderQueryOptions.h.

References flags_.

Referenced by operator!=().

57  {
58  return flags_ == other.flags_;
59  }

+ Here is the caller graph for this function:

bool RenderQueryOptions::requiresPhysicalTables ( ) const
inline

Definition at line 49 of file RenderQueryOptions.h.

References flags_.

49  {
50  return flags_ & FlagBits::kRequiresPhysicalTables;
51  }
void RenderQueryOptions::setFlags ( FlagBits  flags_to_set)
inline

Definition at line 53 of file RenderQueryOptions.h.

References flags_.

53 { flags_ |= flags_to_set; }
bool RenderQueryOptions::shouldAlterRA ( ) const
inline

Definition at line 37 of file RenderQueryOptions.h.

References flags_.

37  {
38  return flags_ & (FlagBits::kInjectRowIdForHitTesting | FlagBits::kInjectRowIdForPPLL);
39  }
bool RenderQueryOptions::useLegacyHitTestLogic ( ) const
inline

Definition at line 41 of file RenderQueryOptions.h.

References flags_.

Referenced by isHitTestingEnabled().

41 { return flags_ & FlagBits::kLegacyHitTestLogic; }

+ Here is the caller graph for this function:

Member Data Documentation


The documentation for this class was generated from the following file: