Panda3D
 All Classes Functions Variables Enumerations
Public Types | Public Member Functions | Friends | List of all members
ConstPointerToArray< Element > Class Template Reference

Similar to PointerToArray, except that its contents may not be modified. More...

#include "pointerToArray.h"

Inheritance diagram for ConstPointerToArray< Element >:
PointerToArrayBase< Element > PointerToBase< ReferenceCountedVector< Element > > PointerToVoid MemoryBase

Public Types

typedef pvector< Element >
::const_iterator 
const_iterator
 
typedef pvector< Element >
::const_reference 
const_reference
 
typedef pvector< Element >
::const_reverse_iterator 
const_reverse_iterator
 
typedef pvector< Element >
::difference_type 
difference_type
 
typedef pvector< Element >
::const_iterator 
iterator
 
typedef pvector< Element >
::const_reference 
reference
 
typedef pvector< Element >
::const_reverse_iterator 
reverse_iterator
 
typedef pvector< Element >
::size_type 
size_type
 
typedef PointerToArrayBase
< Element >::To 
To
 
typedef pvector< Element >
::value_type 
value_type
 
- Public Types inherited from PointerToArrayBase< Element >
typedef PointerToBase
< ReferenceCountedVector
< Element > >::To 
To
 
- Public Types inherited from PointerToBase< ReferenceCountedVector< Element > >
typedef ReferenceCountedVector
< Element > 
To
 

Public Member Functions

 ConstPointerToArray (TypeHandle type_handle=get_type_handle(Element))
 
 ConstPointerToArray (const PointerToArray< Element > &copy)
 
 ConstPointerToArray (const ConstPointerToArray< Element > &copy)
 
reference back () const
 
iterator begin () const
 
size_type capacity () const
 
PointerToArray< Element > cast_non_const () const
 Casts away the constness of the CPTA(Element), and returns an equivalent PTA(Element). More...
 
void clear ()
 To empty the PTA, use the clear() method, since assignment to NULL is problematic (given the ambiguity of the pointer type of NULL). More...
 
bool empty () const
 
iterator end () const
 
reference front () const
 
string get_data () const
 This method exists mainly to access the data of the array easily from a high-level language such as Python. More...
 
const Element & get_element (size_type n) const
 This method exists mainly to access the elements of the array easily from a high-level language such as Python, especially on Windows, where the above index element accessor methods can't be defined because of a confusion with the pointer typecast operator. More...
 
int get_node_ref_count () const
 Returns the node_ref of the underlying vector. More...
 
int get_ref_count () const
 Returns the reference count of the underlying vector. More...
 
string get_subdata (size_type n, size_type count) const
 This method exists mainly to access the data of the array easily from a high-level language such as Python. More...
 
size_type max_size () const
 
void node_ref () const
 Increments the node_ref of the underlying vector. More...
 
bool node_unref () const
 Decrements the node_ref of the underlying vector. More...
 
 operator const Element * () const
 The pointer typecast operator is convenient for maintaining the fiction that we actually have a C-style array. More...
 
ConstPointerToArray< Element > & operator= (ReferenceCountedVector< Element > *ptr)
 
ConstPointerToArray< Element > & operator= (const PointerToArray< Element > &copy)
 
ConstPointerToArray< Element > & operator= (const ConstPointerToArray< Element > &copy)
 
reference operator[] (size_type n) const
 
reference operator[] (int n) const
 
const Element * p () const
 Function p() is similar to the function from ConstPointerTo. More...
 
ConstPointerToArray< Element >
::reverse_iterator 
rbegin () const
 
void ref () const
 Increments the reference count of the underlying vector. More...
 
ConstPointerToArray< Element >
::reverse_iterator 
rend () const
 
size_type size () const
 
bool unref () const
 Decrements the reference count of the underlying vector. More...
 
const pvector< Element > & v () const
 To access the vector itself, for more direct fiddling with some of the vector's esoteric functionality. More...
 
const ReferenceCountedVector
< Element > * 
v0 () const
 To access the internal ReferenceCountedVector object, for very low-level fiddling. More...
 
- Public Member Functions inherited from PointerToBase< ReferenceCountedVector< Element > >
void clear ()
 
void output (ostream &out) const
 
- Public Member Functions inherited from PointerToVoid
size_t get_hash () const
 
bool is_null () const
 Returns true if the PointerTo is a NULL pointer, false otherwise. More...
 
bool operator!= (const PointerToVoid &other) const
 
bool operator< (const void *other) const
 
bool operator< (const PointerToVoid &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. More...
 

Friends

class PointerToArray< Element >
 

Detailed Description

template<class Element>
class ConstPointerToArray< Element >

Similar to PointerToArray, except that its contents may not be modified.

Definition at line 78 of file pointerToArray.h.

Member Function Documentation

template<class Element >
PointerToArray< Element > ConstPointerToArray< Element >::cast_non_const ( ) const
inline

Casts away the constness of the CPTA(Element), and returns an equivalent PTA(Element).

Definition at line 1035 of file pointerToArray.I.

template<class Element >
void ConstPointerToArray< Element >::clear ( )
inline

To empty the PTA, use the clear() method, since assignment to NULL is problematic (given the ambiguity of the pointer type of NULL).

Definition at line 1243 of file pointerToArray.I.

template<class Element >
string ConstPointerToArray< Element >::get_data ( ) const
inline

This method exists mainly to access the data of the array easily from a high-level language such as Python.

It returns the entire contents of the vector as a block of raw data in a string.

Definition at line 1068 of file pointerToArray.I.

References PointerToArray< Element >::get_subdata().

template<class Element >
const Element & ConstPointerToArray< Element >::get_element ( size_type  n) const
inline

This method exists mainly to access the elements of the array easily from a high-level language such as Python, especially on Windows, where the above index element accessor methods can't be defined because of a confusion with the pointer typecast operator.

Definition at line 1052 of file pointerToArray.I.

template<class Element >
int ConstPointerToArray< Element >::get_node_ref_count ( ) const
inline

Returns the node_ref of the underlying vector.

Definition at line 1136 of file pointerToArray.I.

References PointerToArray< Element >::get_node_ref_count().

template<class Element >
int ConstPointerToArray< Element >::get_ref_count ( ) const
inline

Returns the reference count of the underlying vector.

Definition at line 1099 of file pointerToArray.I.

References PointerToArray< Element >::get_ref_count().

template<class Element >
string ConstPointerToArray< Element >::get_subdata ( size_type  n,
size_type  count 
) const
inline

This method exists mainly to access the data of the array easily from a high-level language such as Python.

It returns the contents of a portion of the vector–from element (n) through element (n + count - 1)–as a block of raw data in a string.

Definition at line 1085 of file pointerToArray.I.

References PointerToArray< Element >::p().

template<class Element >
void ConstPointerToArray< Element >::node_ref ( ) const
inline

Increments the node_ref of the underlying vector.

Definition at line 1147 of file pointerToArray.I.

References PointerToArray< Element >::node_ref().

template<class Element >
bool ConstPointerToArray< Element >::node_unref ( ) const
inline

Decrements the node_ref of the underlying vector.

Definition at line 1161 of file pointerToArray.I.

template<class Element >
ConstPointerToArray< Element >::operator const Element * ( ) const
inline

The pointer typecast operator is convenient for maintaining the fiction that we actually have a C-style array.

It returns the address of the first element in the array, unless the pointer is unassigned, in which case it returns NULL.

Definition at line 981 of file pointerToArray.I.

template<class Element >
const Element * ConstPointerToArray< Element >::p ( ) const
inline

Function p() is similar to the function from ConstPointerTo.

It does the same thing: it returns the same thing as the typecast operator, above.

Definition at line 995 of file pointerToArray.I.

Referenced by WebBrowserTexture::cull_callback(), and TexturePeeker::lookup().

template<class Element >
void ConstPointerToArray< Element >::ref ( ) const
inline

Increments the reference count of the underlying vector.

Definition at line 1110 of file pointerToArray.I.

References PointerToArray< Element >::ref().

template<class Element >
bool ConstPointerToArray< Element >::unref ( ) const
inline

Decrements the reference count of the underlying vector.

Definition at line 1124 of file pointerToArray.I.

template<class Element >
const pvector< Element > & ConstPointerToArray< Element >::v ( ) const
inline

To access the vector itself, for more direct fiddling with some of the vector's esoteric functionality.

Definition at line 1008 of file pointerToArray.I.

Referenced by Datagram::copy_array().

template<class Element >
const ReferenceCountedVector< Element > * ConstPointerToArray< Element >::v0 ( ) const
inline

To access the internal ReferenceCountedVector object, for very low-level fiddling.

Know what you are doing!

Definition at line 1023 of file pointerToArray.I.


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