---
name: "SoLightPath"
section: "3"
platform: "linux"
package: "coin"
version: "1:4.0.10-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/SoLightPath"
---

# SoLightPath(3)

The SoLightPath class is a light version of SoPath.

## NAME

SoLightPath - The **SoLightPath** class is a light version of **SoPath**.

## SYNOPSIS

\#include \<Inventor/misc/SoLightPath.h\>

### Public Member Functions

**SoLightPath** (**SoNode** \*node, const int approxlength)\
 **SoLightPath** (const int approxlength)\
 **~SoLightPath** ()\
 void **setHead** (**SoNode** \*const node)\
 void **append** (const int childindex)\
 void **push** (const int childindex)\
 void **pop** (void)\
 void **setTail** (const int childindex)\
 **SoNode** \* **getTail** (void) const\
 **SoNode** \* **getHead** (void) const\
 **SoNode** \* **getNode** (const int index) const\
 int **getIndex** (const int index) const\
 int **getFullLength** () const\
 void **truncate** (const int startindex)\
 void **makeTempPath** (**SoTempPath** \*path) const\

## Detailed Description

The **SoLightPath** class is a light version of **SoPath**.

**SoLightPath** can be used if you only need a temporary path, and don't want the overhead that comes with an **SoPath** (ref, unref, auditing etc).

It is your responsibility to make sure the path is valid before using it.

## Constructor & Destructor Documentation

### SoLightPath::SoLightPath (SoNode \* headnodeptr, const int approxlength)

A constructor. Supply the head node and the approximate length of the path.

### SoLightPath::SoLightPath (const int approxlength)

A constructor. Supply the approximate length of the path.

### SoLightPath::~SoLightPath ()

Destructor.

## Member Function Documentation

### void SoLightPath::setHead (SoNode \*const node)

Sets head of path. Truncates path to length 1.

### void SoLightPath::append (const int childindex)

Appends a *childindex* to the path.

### void SoLightPath::push (const int childindex)

Same as **append()**.

### void SoLightPath::pop (void )

Pops off the last child.

### void SoLightPath::setTail (const int childindex)

Sets the tail of the path.

### SoNode \* SoLightPath::getTail (void ) const

Returns the tail node of the path. Uses **getNode()**.

### SoNode \* SoLightPath::getHead (void ) const

Returns the head node.

### SoNode \* SoLightPath::getNode (const int index) const

Returns the index'th node in path.

### int SoLightPath::getIndex (const int index) const

Returns the child index of the index'th node in the path.

### int SoLightPath::getFullLength () const

Returns the length of the path.

### void SoLightPath::truncate (const int startindex)

Truncates the path from *startindex*.

### void SoLightPath::makeTempPath (SoTempPath \* path) const

Updates *path* to be the same path as this path.

## Author

Generated automatically by Doxygen for Coin from the source code.
