---
name: "tlp_StructDef"
section: "3tulip"
platform: "linux"
package: "tulip-doc"
version: "3.1.2-2.3"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/tlp_StructDef"
---

# tlp\_StructDef(3tulip)

This class enables to define a structure.

## NAME

tlp::StructDef -

This class enables to define a structure.

## SYNOPSIS

`#include <Reflect.h>`

### Public Member Functions

template\<typename T \> void **add** (const char \*str, const char \*inHelp=0, const char \*inDefValue=0, bool mandatory=true)\
 *Add the variable of type T and name str in the structure.*  bool **hasField** (std::string)\
 *Returns if a name field exists.*  **Iterator**\< std::pair\< std::string, std::string \> \> \* **getField** () const \
 *Get iterator on structure fields.*  std::string **getHelp** (std::string str) const \
 *Get field help & default string-value (see also XXXType in* **Types.h***).*  std::string **getDefValue** (std::string str) const \
 void **setDefValue** (std::string name, std::string value)\
 bool **isMandatory** (std::string str) const \
 *Return if field is mandatory.*  void **erase** (std::string str)\
 *Remove the variable which have str has name in the structure.*  void **buildDefaultDataSet** (**DataSet** &ioDataSet, **Graph** \*inG=0)\

## Detailed Description

This class enables to define a structure.

## Member Function Documentation

### template\<typename T \> void tlp::StructDef::add (const char \* str, const char \* inHelp = `0`, const char \* inDefValue = `0`, bool mandatory = `true`)` [inline]`

Add the variable of type T and name str in the structure.

### void tlp::StructDef::buildDefaultDataSet (DataSet & ioDataSet, Graph \* inG = `0`) Build a default dataSet according to fields The optional Graph is needed to create properties (PropertyInterface\*)

### void tlp::StructDef::erase (std::string str)

Remove the variable which have str has name in the structure.

### std::string tlp::StructDef::getDefValue (std::string str) const

### Iterator\< std::pair\<std::string,std::string\> \>\* tlp::StructDef::getField () const

Get iterator on structure fields.

### std::string tlp::StructDef::getHelp (std::string str) const

Get field help & default string-value (see also XXXType in **Types.h**).

### bool tlp::StructDef::hasField (std::string)

Returns if a name field exists.

### bool tlp::StructDef::isMandatory (std::string str) const

Return if field is mandatory.

### void tlp::StructDef::setDefValue (std::string name, std::string value)

## Author

Generated automatically by Doxygen for Tulip Graph Library from the source code.
