Coin: SoDetailList Class Reference

| Coin3D is Free Software, published under the BSD 3-clause license. | https://coin3d.github.io https://www.kongsberg.com/en/kogt/

SoDetailList Class Reference
Detail Classes

The SoDetailList class is a container for pointers to SoDetail objects. More...

`#include <Inventor/lists/SoDetailList.h>`

Inheritance diagram for SoDetailList:

## Public Member Functions
| SoDetailList (void)
| SoDetailList (const int sizehint)
| SoDetailList (const SoDetailList &l)
| ~SoDetailList ()
void | append (SoDetail *detail)
void | insert (SoDetail *detail, const int insertbefore)
void | truncate (const int length, const int fit=0)
void | copy (const SoDetailList &l)
SoDetailList & | operator= (const SoDetailList &l)
SoDetail * | operator[] (const int idx) const
void | set (const int index, SoDetail *item)
Public Member Functions inherited from SbPList
| SbPList (const int sizehint=DEFAULTSIZE)
| SbPList (const SbPList &l)
| ~SbPList ()
void | copy (const SbPList &l)
SbPList & | operator= (const SbPList &l)
void | fit (void)
void | append (void *item)
int | find (const void *item) const
void | insert (void *item, const int insertbefore)
void | removeItem (void *item)
void | remove (const int index)
void | removeFast (const int index)
int | getLength (void) const
void | truncate (const int length, const int fit=0)
void ** | getArrayPtr (const int start=0) const
void *& | operator[] (const int index) const
int | operator== (const SbPList &l) const
int | operator!= (const SbPList &l) const
void * | get (const int index) const
void | set (const int index, void *item)

## Additional Inherited Members
Protected Member Functions inherited from SbPList
void | expand (const int size)
int | getArraySize (void) const

## Detailed Description

The SoDetailList class is a container for pointers to SoDetail objects.

This list class will delete the details when destructed/truncated, or when a detail in the list is replaced by another detail. The caller is responsible for allocating the details passed to the list, but should not deallocate them since this will be handled by the list.

See also
  SbPList

## Constructor & Destructor Documentation

## ◆ SoDetailList() [1/3]

SoDetailList::SoDetailList | ( | void |  | ) |
| inline

Default constructor.

## ◆ SoDetailList() [2/3]

SoDetailList::SoDetailList | ( | const int | sizehint | ) |
| inline

This constructor initializes the internal allocated size for the list to sizehint. Note that the list will still initially contain zero items.

See also
  SbList::SbList(const int sizehint)

## ◆ SoDetailList() [3/3]

SoDetailList::SoDetailList | ( | const SoDetailList & | l | ) |

Copy constructor.

## ◆ ~SoDetailList()

SoDetailList::~SoDetailList | ( |  | ) |

Destructor.

## Member Function Documentation

## ◆ append()

void SoDetailList::append | ( | SoDetail * | item | ) |
| inline

Append item to the end of the list.

Automatically allocates more items internally if needed.

Overloaded from parent to accept an SoDetail pointer argument.

See also
  SbPList::append()

## ◆ insert()

void SoDetailList::insert | ( | SoDetail * | item,
|  | const int | insertbefore )
| inline

Insert item at index insertbefore.

insertbefore should not be larger than the current number of items in the list.

Overloaded from parent to accept an SoDetail pointer argument.

See also
  SbPList::insert()

## ◆ truncate()

void SoDetailList::truncate | ( | const int | length,
|  | const int | fit = 0 )

Shorten the list to contain length elements, removing items from index length and onwards.

If fit is non-zero, will also shrink the internal size of the allocated array. Note that this is much less efficient than not re-fitting the array size.

Overloaded from parent to delete truncated items.

See also
  SbPList::truncate()

## ◆ copy()

void SoDetailList::copy | ( | const SoDetailList & | l | ) |

Make this list a copy of l.

Overloaded from parent to copy items, not just pointers.

See also
  SbPList::copy()

## ◆ operator=()

SoDetailList & SoDetailList::operator= | ( | const SoDetailList & | l | ) |
| inline

Make this list a copy of l.

## ◆ operator[]()

SoDetail * SoDetailList::operator[] | ( | const int | idx | ) | const
| inline

Returns element at index.

Will automatically expand the size of the internal array if index is outside the current bounds of the list. The values of any additional pointers are then set to `NULL`.

Overloaded from parent to return an SoDetail pointer.

See also
  SbPList::operator[]()

## ◆ set()

void SoDetailList::set | ( | const int | idx,
|  | SoDetail * | detail )

Index operator to set element at index. Does not expand array bounds if index is outside the list.

Overloaded from parent to destruct the replaced item.

See also
  SbPList::set()

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

- SoDetailList.h
- SoDetailList.cpp