13 #ifndef MLPACK_CORE_TREE_RECTANGLE_TREE_X_TREE_AUXILIARY_INFORMATION_HPP 14 #define MLPACK_CORE_TREE_RECTANGLE_TREE_X_TREE_AUXILIARY_INFORMATION_HPP 23 template<
typename TreeType>
41 node->MaxNumChildren()),
83 other.normalNodeMaxNumChildren = 0;
176 for (
int i = 0; i < dim; i++)
181 lastDimension(other.lastDimension),
182 history(other.history)
193 lastDimension(other.lastDimension),
194 history(
std::move(other.history))
196 other.lastDimension = 0;
199 template<
typename Archive>
226 template<
typename Archive>
231 ar &
CreateNVP(normalNodeMaxNumChildren,
"normalNodeMaxNumChildren");
232 ar &
CreateNVP(splitHistory,
"splitHistory");
240 #endif // MLPACK_CORE_TREE_RECTANGLE_TREE_X_TREE_AUXILIARY_INFORMATION_HPP
SplitHistoryStruct(int dim)
Linear algebra utility functions, generally performed on matrices or vectors.
FirstShim< T > CreateNVP(T &t, const std::string &name, typename std::enable_if_t< HasSerialize< T >::value > *=0)
Call this function to produce a name-value pair; this is similar to BOOST_SERIALIZATION_NVP(), but should be used for types that have a Serialize() function (or contain a type that has a Serialize() function) instead of a serialize() function.
std::vector< bool > history
SplitHistoryStruct & operator=(const SplitHistoryStruct &other)
SplitHistoryStruct(SplitHistoryStruct &&other)
The X tree requires that the tree records it's "split history".
void Serialize(Archive &ar, const unsigned int)
SplitHistoryStruct(const SplitHistoryStruct &other)