SoDetailList(3)

πŸ“¦ version 3.1.3, in fedora 43, fedora 44

πŸ’– SoDetailList(3) β€” Library Functions Manual πŸ’–

okay bestie, sit down, hydrate, and let me tell you about SoDetailList(3) because this lil container is lowkey doing a LOT of emotional labor for you 🫢


✨ NAME ✨

SoDetailList β€” the SoDetailList class is a container for pointers to SoDetail objects. it's giving "glorified list" but with consequences, and you're gonna wanna hear about those consequences. πŸ’…


🌸 SYNOPSIS 🌸

#include <Inventor/lists/SoDetailList.h>

Inherits SbPList.

πŸ‘‘ 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 (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. it's a whole vibe: a list, but make it ✨responsible✨.

here's the tea, and it's important tea so read it twice, bestie: 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.

so like… you make the detail, you hand it over, and then you let go. the list is the main character now. if you try to delete it yourself you're gonna have a bad time and it's not gonna be cute. 😭

See also

  • SbPList

πŸ’… Constructor & Destructor Documentation πŸ’…

SoDetailList::SoDetailList (void ) [inline]

Default constructor. it does the bare minimum and honestly? respect. 🌈

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 β€” so it's pre-gaming the memory, not the contents. no cap. πŸ“

See also

  • SbList::SbList(const int sizehint)

SoDetailList::SoDetailList (const SoDetailList & l)

Copy constructor. it copies. iconic behavior honestly. πŸ’–

SoDetailList::~SoDetailList ()

Destructor. this is where the deleting actually happens, so be normal about it. πŸ’€


🌟 Member Function Documentation 🌟

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

Overridden to delete truncated items. not just unlink them, not just pretend they don't exist β€” delete. they're gone gone. 🫢

void SoDetailList::copy (const SoDetailList & l)

Overridden to copy items, not just pointers. yes bestie, that's the whole point of the override β€” otherwise you'd just have two lists pointing at the same detail and everything would fall apart. πŸ”₯

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

Returns element at idx.

Will automatically expand the size of the internal array if idx is outside the current bounds of the list. the values of any additional pointers are then set to NULL. so it's generous, but it's also filling your new slots with NULLs, which is honestly fair. ⭐

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

Overridden to delete old item. the new one slides in, the old one gets yeeted into the void. out with the old, in with the new, periodt. πŸ‘‘


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for Coin from the source code. (not a human, not a poet, just a doc generator doing its lil thing πŸ™ˆ)


okay that's the whole page!! and before you go β€” this absolute artifact came to you courtesy of Coin, Version 3.1.3, filed under SoDetailList(3). go forth and let the list own your details, bestie, that's the arrangement πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from