HDK
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UN_Types.h File Reference
#include "UN_API.h"
#include <SYS/SYS_Types.h>
#include <SYS/SYS_Hash.h>
#include <UT/UT_StringHolder.h>
#include <UT/UT_Array.h>
+ Include dependency graph for UN_Types.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  UN_DataNumber
 
class  UN_DataSize
 A type denoting the size of data arrays indexed with UN_DataIndex. More...
 
class  UN_DataIndex
 
class  UN_DataID
 
struct  UT::DefaultClearer< T >
 
struct  UT::DefaultClearer< UN_DataID >
 
struct  UT::DefaultClearer< UN_DataIndex >
 

Namespaces

 UT
 

Macros

#define UN_DATA_INDEX(Class)
 
#define UN_DATA_ID(Class)
 
#define UN_NUMBER_FORMATTER(IdOrIndexType)
 For debug printouts, etc: More...
 
#define UN_ID_CLEARER(ID)   template <> struct DefaultClearer<ID> : public DefaultClearer<UN_DataID> {};
 
#define UN_INDEX_CLEARER(ID)   template<> struct DefaultClearer<ID>: public DefaultClearer<UN_DataIndex>{};
 

Typedefs

using UN_DataIDList = UT_Array< UN_DataID >
 A list of data IDs. More...
 

Enumerations

enum  UN_PortKind { UN_PortKind::Invalid, UN_PortKind::Input, UN_PortKind::Output }
 Differentiates between input and output ports. More...
 

Macro Definition Documentation

#define UN_DATA_ID (   Class)
Value:
class Class : public UN_DataID \
{ \
public: \
explicit Class( UN_DataID data_id = UN_DataID() ) \
: UN_DataID( data_id ) {} \
}; \
\
using Class##List = UT_Array< Class >; \
UN_DataID(ValueType value=INVALID_NUMBER)
Definition: UN_Types.h:200

Data ID is unique throughout the lifespan of a graph, but only for within the same data class (eg, nodes). Ie, a node may have same data id as a wire. So it's a good idea to keep these type spaces separate. Defines types for various data ID numbers.

Definition at line 218 of file UN_Types.h.

#define UN_DATA_INDEX (   Class)
Value:
class Class : public UN_DataIndex \
{ \
public: \
explicit Class( UN_DataIndex data_index = UN_DataIndex() ) \
: UN_DataIndex( data_index ) {} \
}; \
\
using Class##List = UT_Array< Class >; \
UN_DataIndex(ValueType value=INVALID_NUMBER)
Definition: UN_Types.h:147

An index into a data container, referring to a data object. Indices may be reused for new data objects, if old ones were deleted.

Definition at line 173 of file UN_Types.h.

#define UN_ID_CLEARER (   ID)    template <> struct DefaultClearer<ID> : public DefaultClearer<UN_DataID> {};

Definition at line 276 of file UN_Types.h.

#define UN_INDEX_CLEARER (   ID)    template<> struct DefaultClearer<ID>: public DefaultClearer<UN_DataIndex>{};

Definition at line 295 of file UN_Types.h.

#define UN_NUMBER_FORMATTER (   IdOrIndexType)
Value:
inline size_t format(char *buffer, size_t buffer_size, const IdOrIndexType &v) \
{ \
UT::Format::Writer w(buffer, buffer_size); \
UT::Format::Formatter f; \
return f.format(w, #IdOrIndexType "({})", {v.exintValue()}); \
} \
const GLdouble * v
Definition: glcorearb.h:837
GLfloat f
Definition: glcorearb.h:1926
Definition: core.h:760
GLint GLint GLsizei GLint GLenum format
Definition: glcorearb.h:108
GLubyte GLubyte GLubyte GLubyte w
Definition: glcorearb.h:857

For debug printouts, etc:

Definition at line 237 of file UN_Types.h.

Typedef Documentation

A list of data IDs.

Definition at line 210 of file UN_Types.h.

Enumeration Type Documentation

enum UN_PortKind
strong

Differentiates between input and output ports.

Enumerator
Invalid 
Input 
Output 

Definition at line 308 of file UN_Types.h.