IAddInfoLayoutFactory.hpp
38 /// User-defined attribute always have to start with a '_'. For adding predefined attributes please use the corresponding ColumnSemantic value
43 virtual IAddInfoLayoutFactory& addColumn(ColumnType::Type type, const char *name, unsigned arraySize) = 0;
59 /// In contrast to the other addColumn functions, this function supports adding user- and per-defined attributes.
60 /// Whereas the type of pre-defined attributes is fixed, for user-defined attributes the type has to be specified. For accessing
61 /// user-defined attributes in a datamanager, the corresponding type has to be known since it is not allow
62 /// combining identical named columns with different types within one layout. Therefore the function takes a damanager reference
63 /// as first parameter and checks the type all used-defined attributes within the datamanager. If there is a match of the attribute
64 /// name, the type as in the datamanager is used. Otherwise the column is not or with the given default type added.
69 /// \param[in] defaultType in case of user-defined attribute that are not in the manager the specified type will be used
70 /// \param[in] caseSensitive check if the name should be compared case sensitive (or not) to the datamanager attributes
71 /// \return type of the attribute (or ColumnType::none if no attribute was added) and the flag if the attribute exists within the manager
72 virtual std::pair<ColumnType::Type,bool> addColumn(const IDatamanager &dm, const char *name, bool forceAdding = true, ColumnType::Type defaultType = ColumnType::float_, bool caseSensitive = false) = 0;
