11 #ifndef __APEX_INCLUDE_H__
12 #define __APEX_INCLUDE_H__
46 #include <type_traits>
114 template <
typename T>
119 VariadicArg(std::initializer_list<std::pair<const char *, T *>> inputs)
123 for (
auto &[
name, p] : inputs)
140 if (myData.
size() != myNames.
size())
145 return myData.
size();
162 return myNames.
find(name);
169 arr[i] = *
operator[](i);
184 template<
typename IterT>
197 return *myBegin[index];
202 return *myBegin[index];
209 IterT myBegin, myEnd;
230 #define APEX_INVALID_GRAPHDATAID -1
247 #define APEX_INDEX(Class) UN_DATA_INDEX(Class)
250 #define APEX_INDEX_CLEARER(IndexType) UN_INDEX_CLEARER(IndexType)
253 #define APEX_NUMBER_FORMATTER(IdOrIndexType) UN_NUMBER_FORMATTER(IdOrIndexType)
ColorRamp(const UT_Ramp &ramp)
#define UTdebugPrint(...)
int addNode(fpreal pos)
Returns the index of the inserted node.
#define APEX_NUMBER_FORMATTER(IdOrIndexType)
PRM_DataItemHandle DataItem
UN_SubnetID APEX_SubnetID
void setCapacity(exint new_capacity)
const IndirectRange< const_iterator > indirectRange() const
typename UT_Array< T * >::iterator iterator
exint find(const S &s, exint start=0) const
const T & operator[](exint index) const
void setSize(exint newsize)
void toArray(UT_Array< T > &arr) const
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
UNI_PortKind UN_PortKind
Differentiates between input and output ports.
void append(const UT_StringHolder &name, T *item)
IndirectRange< iterator > indirectRange()
exint emplace_back(S &&...s)
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
typename UT_Array< T * >::const_iterator const_iterator
VariadicArg(std::initializer_list< std::pair< const char *, T * >> inputs)
UNI_PortKind
Specifies the port kind, ie, wheter it is an input or an output port.
UN_StickyNoteID APEX_StickyNoteID
GLuint const GLchar * name
const UT_Array< UT_StringHolder > & names() const
const_iterator end() const
UT_RGBAT< fpreal32 > UT_FRGBA
Utility class for containing a color ramp.
T * operator[](exint idx)
#define APEX_INDEX(Class)
SIM_API const UT_StringHolder distance
exint nameToIndex(const UT_StringRef &name) const
const_iterator begin() const
const T * operator[](exint idx) const
T & operator[](exint index)
iterator end()
End iterator.
FloatRamp(const UT_Ramp &ramp)
APEX_SubnetID APEX_GraphID
#define APEX_INDEX_CLEARER(IndexType)