Panda3D
Public Member Functions | Public Attributes | List of all members
InternalNameCollection Class Reference

Public Member Functions

 InternalNameCollection (const InternalNameCollection &copy)
 
void add_name (const InternalName *name)
 Adds a new InternalName to the collection. More...
 
void add_names_from (const InternalNameCollection &other)
 Adds all the InternalNames indicated in the other collection to this name. More...
 
void clear ()
 Removes all InternalNames from the collection. More...
 
const InternalNameget_name (int index) const
 
int get_num_names () const
 
bool has_name (const InternalName *name) const
 Returns true if the indicated InternalName appears in this collection, false otherwise. More...
 
const InternalNameoperator [] (int index) const
 Returns the nth InternalName in the collection. More...
 
InternalNameCollection operator+ (const InternalNameCollection &other) const
 Returns a InternalNameCollection representing the concatenation of the two lists. More...
 
void operator+= (const InternalNameCollection &other)
 Appends the other list onto the end of this one. More...
 
void operator= (const InternalNameCollection &copy)
 
void output (std::ostream &out) const
 Writes a brief one-line description of the InternalNameCollection to the indicated output stream. More...
 
void remove_duplicate_names ()
 Removes any duplicate entries of the same InternalNames on this collection. More...
 
bool remove_name (const InternalName *name)
 Removes the indicated InternalName from the collection. More...
 
void remove_names_from (const InternalNameCollection &other)
 Removes from this collection all of the InternalNames listed in the other collection. More...
 
int size () const
 Returns the number of names in the collection. More...
 
void write (std::ostream &out, int indent_level=0) const
 Writes a complete multi-line description of the InternalNameCollection to the indicated output stream. More...
 

Public Attributes

 get_name
 Returns the nth InternalName in the collection. More...
 
 get_num_names
 Returns the number of InternalNames in the collection. More...
 

Detailed Description

Definition at line 24 of file internalNameCollection.h.

Member Function Documentation

◆ add_name()

void InternalNameCollection::add_name ( const InternalName name)

Adds a new InternalName to the collection.

Definition at line 46 of file internalNameCollection.cxx.

◆ add_names_from()

void InternalNameCollection::add_names_from ( const InternalNameCollection other)

Adds all the InternalNames indicated in the other collection to this name.

The other names are simply appended to the end of the names in this list; duplicates are not automatically removed.

Definition at line 98 of file internalNameCollection.cxx.

References get_num_names.

Referenced by operator+=().

◆ clear()

void InternalNameCollection::clear ( )

Removes all InternalNames from the collection.

Definition at line 167 of file internalNameCollection.cxx.

◆ has_name()

bool InternalNameCollection::has_name ( const InternalName name) const

Returns true if the indicated InternalName appears in this collection, false otherwise.

Definition at line 154 of file internalNameCollection.cxx.

◆ operator []()

const InternalName * InternalNameCollection::operator [] ( int  index) const

Returns the nth InternalName in the collection.

This is the same as get_name(), but it may be a more convenient way to access it.

Definition at line 194 of file internalNameCollection.cxx.

◆ operator+()

InternalNameCollection InternalNameCollection::operator+ ( const InternalNameCollection other) const
inline

Returns a InternalNameCollection representing the concatenation of the two lists.

Definition at line 34 of file internalNameCollection.I.

◆ operator+=()

void InternalNameCollection::operator+= ( const InternalNameCollection other)
inline

Appends the other list onto the end of this one.

Definition at line 25 of file internalNameCollection.I.

References add_names_from().

◆ output()

void InternalNameCollection::output ( std::ostream &  out) const

Writes a brief one-line description of the InternalNameCollection to the indicated output stream.

Definition at line 214 of file internalNameCollection.cxx.

References get_num_names.

◆ remove_duplicate_names()

void InternalNameCollection::remove_duplicate_names ( )

Removes any duplicate entries of the same InternalNames on this collection.

If a InternalName appears multiple times, the first appearance is retained; subsequent appearances are removed.

Definition at line 129 of file internalNameCollection.cxx.

References get_num_names.

◆ remove_name()

bool InternalNameCollection::remove_name ( const InternalName name)

Removes the indicated InternalName from the collection.

Returns true if the name was removed, false if it was not a member of the collection.

Definition at line 65 of file internalNameCollection.cxx.

◆ remove_names_from()

void InternalNameCollection::remove_names_from ( const InternalNameCollection other)

Removes from this collection all of the InternalNames listed in the other collection.

Definition at line 111 of file internalNameCollection.cxx.

References get_num_names.

◆ size()

int InternalNameCollection::size ( ) const

Returns the number of names in the collection.

This is the same thing as get_num_names().

Definition at line 205 of file internalNameCollection.cxx.

◆ write()

void InternalNameCollection::write ( std::ostream &  out,
int  indent_level = 0 
) const

Writes a complete multi-line description of the InternalNameCollection to the indicated output stream.

Definition at line 227 of file internalNameCollection.cxx.

Member Data Documentation

◆ get_name

const InternalName * InternalNameCollection::get_name

Returns the nth InternalName in the collection.

Definition at line 41 of file internalNameCollection.h.

◆ get_num_names

int InternalNameCollection::get_num_names

Returns the number of InternalNames in the collection.

Definition at line 41 of file internalNameCollection.h.

Referenced by add_names_from(), output(), remove_duplicate_names(), and remove_names_from().


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