HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_OptionsRef Class Reference

#include <UT_Options.h>

+ Inheritance diagram for UT_OptionsRef:

Public Types

typedef UT_Options value_type
 

Public Member Functions

SYS_FORCE_INLINE UT_OptionsRef ()
 
SYS_FORCE_INLINE UT_OptionsRef (const UT_Options *opt)
 Will make a shallow reference. More...
 
SYS_FORCE_INLINE UT_OptionsRef (const UT_OptionsRef &s)
 Shares a reference with the source. More...
 
SYS_FORCE_INLINE UT_OptionsRef (UT_OptionsRef &&s) noexcept
 Move constructor. Steals the working data from the original. More...
 
SYS_FORCE_INLINE ~UT_OptionsRef ()
 
bool isUnique () const
 Returns true this object is the sole owner of the underlying options. More...
 
int use_count () const
 
UT_OptionsRefoperator= (const UT_OptionsRef &s)
 Shares a reference with the source. More...
 
SYS_FORCE_INLINE UT_OptionsRefoperator= (UT_OptionsRef &&s)
 
SYS_FORCE_INLINE const UT_OptionsoptionsOrNull () const
 
SYS_FORCE_INLINE const UT_Optionsoptions () const
 
bool operator== (const UT_OptionsRef &s) const
 
bool operator== (const UT_Options *b) const
 
bool operator!= (const UT_OptionsRef &s) const
 
bool operator!= (const UT_Options *s) const
 
bool isEqual (const UT_OptionsRef &s, fpreal64 tol) const
 Comparison operator with a tolerance for float values. More...
 
SYS_FORCE_INLINE const UT_Optionsoperator-> () const
 
SYS_FORCE_INLINE const UT_Optionsoperator* () const
 
SYS_FORCE_INLINE void swap (UT_OptionsRef &other)
 
SYS_FORCE_INLINE void clear ()
 
bool isEmpty () const
 
 operator bool () const
 
unsigned hash () const
 
void reference (const UT_Options *src)
 
int64 getMemoryUsage (bool inclusive) const
 

Static Public Member Functions

static const UT_OptionsemptyOptions ()
 

Friends

class UT_OptionsHolder
 
void swap (UT_OptionsRef &a, UT_OptionsRef &b)
 Friend specialization of std::swap() to use UT_OptionsRef::swap() More...
 
enum  UT_OptionsSentinelType { SENTINEL }
 
SYS_FORCE_INLINE UT_OptionsRef (UT_OptionsSentinelType)
 
SYS_FORCE_INLINE bool isSentinel () const
 
SYS_FORCE_INLINE void makeSentinel ()
 

Detailed Description

A holder for a options, which caches the hash value. A UT_OptionsRef does not necessarily own the options, and it is therefore not safe to e.g. store a UT_OptionsRef in a container or member variable.

See Also
UT_OptionsHolder

Definition at line 682 of file UT_Options.h.

Member Typedef Documentation

Definition at line 685 of file UT_Options.h.

Member Enumeration Documentation

Special sentinel value support

Enumerator
SENTINEL 

Definition at line 727 of file UT_Options.h.

Constructor & Destructor Documentation

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( )
inline

Definition at line 688 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( const UT_Options opt)
inline

Will make a shallow reference.

Definition at line 695 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( const UT_OptionsRef s)
inline

Shares a reference with the source.

Definition at line 703 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( UT_OptionsRef &&  s)
inlinenoexcept

Move constructor. Steals the working data from the original.

Definition at line 712 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::~UT_OptionsRef ( )
inline

Definition at line 721 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( UT_OptionsSentinelType  )
inlineexplicit

Special sentinel value support

Definition at line 730 of file UT_Options.h.

Member Function Documentation

SYS_FORCE_INLINE void UT_OptionsRef::clear ( void  )
inline

Definition at line 880 of file UT_Options.h.

static const UT_Options& UT_OptionsRef::emptyOptions ( )
inlinestatic

Definition at line 934 of file UT_Options.h.

int64 UT_OptionsRef::getMemoryUsage ( bool  inclusive) const
inline

Definition at line 924 of file UT_Options.h.

unsigned UT_OptionsRef::hash ( void  ) const
inline

Definition at line 899 of file UT_Options.h.

bool UT_OptionsRef::isEmpty ( ) const
inline

Definition at line 885 of file UT_Options.h.

bool UT_OptionsRef::isEqual ( const UT_OptionsRef s,
fpreal64  tol 
) const

Comparison operator with a tolerance for float values.

SYS_FORCE_INLINE bool UT_OptionsRef::isSentinel ( ) const
inline

Special sentinel value support

Definition at line 737 of file UT_Options.h.

bool UT_OptionsRef::isUnique ( ) const
inline

Returns true this object is the sole owner of the underlying options.

Definition at line 752 of file UT_Options.h.

SYS_FORCE_INLINE void UT_OptionsRef::makeSentinel ( )
inline

Special sentinel value support

Definition at line 743 of file UT_Options.h.

UT_OptionsRef::operator bool ( ) const
inlineexplicit

Definition at line 897 of file UT_Options.h.

bool UT_OptionsRef::operator!= ( const UT_OptionsRef s) const
inline

Definition at line 857 of file UT_Options.h.

bool UT_OptionsRef::operator!= ( const UT_Options s) const
inline

Definition at line 859 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options& UT_OptionsRef::operator* ( ) const
inline

Definition at line 866 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options* UT_OptionsRef::operator-> ( ) const
inline

Definition at line 865 of file UT_Options.h.

UT_OptionsRef& UT_OptionsRef::operator= ( const UT_OptionsRef s)
inline

Shares a reference with the source.

Definition at line 776 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef& UT_OptionsRef::operator= ( UT_OptionsRef &&  s)
inline

Move the contents of about-to-be-destructed options s to this string.

Definition at line 788 of file UT_Options.h.

bool UT_OptionsRef::operator== ( const UT_OptionsRef s) const
inline

Definition at line 812 of file UT_Options.h.

bool UT_OptionsRef::operator== ( const UT_Options b) const
inline

Definition at line 838 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options* UT_OptionsRef::options ( ) const
inline

Definition at line 804 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options* UT_OptionsRef::optionsOrNull ( ) const
inline

Definition at line 796 of file UT_Options.h.

void UT_OptionsRef::reference ( const UT_Options src)
inline

Make a light weight reference to the source. Caller must make sure src lives for the duration of this object, and any objects value copied from this!

Definition at line 918 of file UT_Options.h.

SYS_FORCE_INLINE void UT_OptionsRef::swap ( UT_OptionsRef other)
inline

Definition at line 869 of file UT_Options.h.

int UT_OptionsRef::use_count ( ) const
inline

Returns the shared ptr use count. 0 if not a shared pointer. (null or soft ref)

Definition at line 766 of file UT_Options.h.

Friends And Related Function Documentation

void swap ( UT_OptionsRef a,
UT_OptionsRef b 
)
friend

Friend specialization of std::swap() to use UT_OptionsRef::swap()

Definition at line 877 of file UT_Options.h.

friend class UT_OptionsHolder
friend

Definition at line 972 of file UT_Options.h.


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