Panda3D

Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
NodeConstPointerTo< T > Class Template Reference

A NodeConstPointerTo is similar to a NodePointerTo, except it keeps a const pointer to the thing. More...

`#include "nodePointerTo.h"`

Inheritance diagram for NodeConstPointerTo< T >:

## Public Types
typedef NodePointerToBase< T >::To | To
Public Types inherited from NodePointerToBase< T >
typedef T | To

## Public Member Functions
| NodeConstPointerTo (const NodeConstPointerTo< T > &copy)
| NodeConstPointerTo (const NodePointerTo< T > &copy)
| NodeConstPointerTo (const To *ptr=nullptr)
| NodeConstPointerTo (NodeConstPointerTo< T > &&from) noexcept
| NodeConstPointerTo (NodePointerTo< T > &&from) noexcept
| operator const T * () const
| We also have the typecast operator to automatically convert NodeConstPointerTo's to the required kind of actual pointer.
const To & | operator* () const
const To * | operator-> () const
NodeConstPointerTo< T > & | operator= (const NodeConstPointerTo< T > &copy)
NodeConstPointerTo< T > & | operator= (const NodePointerTo< T > &copy)
NodeConstPointerTo< T > & | operator= (const To *ptr)
NodeConstPointerTo< T > & | operator= (NodeConstPointerTo< T > &&from) noexcept
NodeConstPointerTo< T > & | operator= (NodePointerTo< T > &&from) noexcept
const To * | p () const
| Returns an ordinary pointer instead of a NodeConstPointerTo.
Public Member Functions inherited from NodePointerToBase< T >
void | clear ()
| A convenient way to set the NodePointerTo object to NULL.
void | output (std::ostream &out) const
| A handy function to output NodePointerTo's as a hex pointer followed by a reference count.
Public Member Functions inherited from PointerToVoid
size_t | get_hash () const
constexpr bool | is_null () const
| Returns true if the PointerTo is a NULL pointer, false otherwise.
bool | operator!= (const PointerToVoid &other) const
bool | operator< (const PointerToVoid &other) const
bool | operator< (const void *other) const
bool | operator== (const PointerToVoid &other) const
void | swap (PointerToVoid &other) noexcept
| Swaps the contents of this PointerTo with the other, without touching the reference counts.
Public Member Functions inherited from MemoryBase
void | operator delete (void *, void *)
void | operator delete (void *ptr)
void | operator delete[] (void *, void *)
void | operator delete[] (void *ptr)
void * | operator new (size_t size)
void * | operator new (size_t size, void *ptr)
void * | operator new[] (size_t size)
void * | operator new[] (size_t size, void *ptr)

## Detailed Description

template<class T>
class NodeConstPointerTo< T >

A NodeConstPointerTo is similar to a NodePointerTo, except it keeps a const pointer to the thing.

Definition at line 57 of file nodePointerTo.h.

## Member Typedef Documentation

## ◆ To

template<class T>

typedef NodePointerToBase<T>::To NodeConstPointerTo< T >::To

Definition at line 62 of file nodePointerTo.h.

## Constructor & Destructor Documentation

## ◆ NodeConstPointerTo() [1/4]

template<class T>

NodeConstPointerTo< T >::NodeConstPointerTo | ( | const NodePointerTo< T > & | copy | ) |
| inline

Definition at line 149 of file nodePointerTo.I.

## ◆ NodeConstPointerTo() [2/4]

template<class T>

NodeConstPointerTo< T >::NodeConstPointerTo | ( | const NodeConstPointerTo< T > & | copy | ) |
| inline

Definition at line 161 of file nodePointerTo.I.

## ◆ NodeConstPointerTo() [3/4]

template<class T>

NodeConstPointerTo< T >::NodeConstPointerTo | ( | NodePointerTo< T > && | from | ) |
| inline noexcept

Definition at line 173 of file nodePointerTo.I.

## ◆ NodeConstPointerTo() [4/4]

template<class T>

NodeConstPointerTo< T >::NodeConstPointerTo | ( | NodeConstPointerTo< T > && | from | ) |
| inline noexcept

Definition at line 185 of file nodePointerTo.I.

## Member Function Documentation

## ◆ operator const T *()

template<class T>

NodeConstPointerTo< T >::operator const T * | ( |  | ) | const
| inline

We also have the typecast operator to automatically convert NodeConstPointerTo's to the required kind of actual pointer.

This introduces ambiguities which the compiler will resolve one way or the other, but we don't care which way it goes because either will be correct.

Definition at line 247 of file nodePointerTo.I.

## ◆ operator*()

template<class T>

const NodeConstPointerTo< T >::To & NodeConstPointerTo< T >::operator* | ( |  | ) | const
| inline

Definition at line 221 of file nodePointerTo.I.

## ◆ operator->()

template<class T>

const NodeConstPointerTo< T >::To * NodeConstPointerTo< T >::operator-> | ( |  | ) | const
| inline

Definition at line 232 of file nodePointerTo.I.

## ◆ operator=() [1/5]

template<class T>

NodeConstPointerTo< T > & NodeConstPointerTo< T >::operator= | ( | const NodeConstPointerTo< T > & | copy | ) |
| inline

Definition at line 294 of file nodePointerTo.I.

## ◆ operator=() [2/5]

template<class T>

NodeConstPointerTo< T > & NodeConstPointerTo< T >::operator= | ( | const NodePointerTo< T > & | copy | ) |
| inline

Definition at line 282 of file nodePointerTo.I.

## ◆ operator=() [3/5]

template<class T>

NodeConstPointerTo< T > & NodeConstPointerTo< T >::operator= | ( | const To * | ptr | ) |
| inline

Definition at line 270 of file nodePointerTo.I.

## ◆ operator=() [4/5]

template<class T>

NodeConstPointerTo< T > & NodeConstPointerTo< T >::operator= | ( | NodeConstPointerTo< T > && | from | ) |
| inline noexcept

Definition at line 209 of file nodePointerTo.I.

## ◆ operator=() [5/5]

template<class T>

NodeConstPointerTo< T > & NodeConstPointerTo< T >::operator= | ( | NodePointerTo< T > && | from | ) |
| inline noexcept

Definition at line 197 of file nodePointerTo.I.

## ◆ p()

template<class T>

const NodeConstPointerTo< T >::To * NodeConstPointerTo< T >::p | ( |  | ) | const
| inline

Returns an ordinary pointer instead of a NodeConstPointerTo.

Useful to work around compiler problems, particularly for implicit upcasts.

Definition at line 259 of file nodePointerTo.I.

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

- panda/src/express/nodePointerTo.h
- panda/src/express/nodePointerTo.I