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 704 of file UT_Options.h.

Member Typedef Documentation

Definition at line 707 of file UT_Options.h.

Member Enumeration Documentation

Special sentinel value support

Enumerator
SENTINEL 

Definition at line 749 of file UT_Options.h.

Constructor & Destructor Documentation

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( )
inline

Definition at line 710 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 717 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 725 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 734 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::~UT_OptionsRef ( )
inline

Definition at line 743 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( UT_OptionsSentinelType  )
inlineexplicit

Special sentinel value support

Definition at line 752 of file UT_Options.h.

Member Function Documentation

SYS_FORCE_INLINE void UT_OptionsRef::clear ( void  )
inline

Definition at line 902 of file UT_Options.h.

static const UT_Options& UT_OptionsRef::emptyOptions ( )
inlinestatic

Definition at line 956 of file UT_Options.h.

int64 UT_OptionsRef::getMemoryUsage ( bool  inclusive) const
inline

Definition at line 946 of file UT_Options.h.

unsigned UT_OptionsRef::hash ( void  ) const
inline

Definition at line 921 of file UT_Options.h.

bool UT_OptionsRef::isEmpty ( ) const
inline

Definition at line 907 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 759 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 774 of file UT_Options.h.

SYS_FORCE_INLINE void UT_OptionsRef::makeSentinel ( )
inline

Special sentinel value support

Definition at line 765 of file UT_Options.h.

UT_OptionsRef::operator bool ( ) const
inlineexplicit

Definition at line 919 of file UT_Options.h.

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

Definition at line 879 of file UT_Options.h.

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

Definition at line 881 of file UT_Options.h.

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

Definition at line 888 of file UT_Options.h.

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

Definition at line 887 of file UT_Options.h.

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

Shares a reference with the source.

Definition at line 798 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 810 of file UT_Options.h.

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

Definition at line 834 of file UT_Options.h.

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

Definition at line 860 of file UT_Options.h.

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

Definition at line 826 of file UT_Options.h.

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

Definition at line 818 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 940 of file UT_Options.h.

SYS_FORCE_INLINE void UT_OptionsRef::swap ( UT_OptionsRef other)
inline

Definition at line 891 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 788 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 899 of file UT_Options.h.

friend class UT_OptionsHolder
friend

Definition at line 994 of file UT_Options.h.


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