1 #ifndef KD_TREE_ELEMENT_H 2 #define KD_TREE_ELEMENT_H 11 namespace datastructure {
39 template <
typename K,
typename E>
60 const E& val = E(),
const string& lab =
string())
62 thickness(th), dimension(dim) {
76 const E& val = E(),
const string& lab =
string())
77 :
BSTElement<K, E>(k, nullptr, nullptr, val, lab),
78 dimension(dim), thickness(th) {
182 stringstream dim_str, thck_str;
183 dim_str << dimension;
184 thck_str << thickness;
This class can be used to create binary search tree elements, derived from BinTreeElement.
Definition: BSTElement.h:31
void setLeft(KdTreeElement *l)
Sets left child to "l".
Definition: KdTreeElement.h:149
int getDimension() const
Get Dimension of the partition.
Definition: KdTreeElement.h:88
virtual const string getDStype() const override
Definition: KdTreeElement.h:81
void setRight(KdTreeElement *r)
Sets right child to "r".
Definition: KdTreeElement.h:172
virtual BSTElement * getRight() override
Definition: BSTElement.h:111
void setKey(const K &k)
Definition: BSTElement.h:81
const string COLON
Definition: DataStructure.h:51
void setThickness(const float &th)
Set partitioning dimension to "dim".
Definition: KdTreeElement.h:111
void setLeft(BSTElement *l)
Definition: BSTElement.h:104
K getKey() const
Definition: BSTElement.h:73
KdTreeElement(const K &k, int dim, int th=0, const E &val=E(), const string &lab=string())
Definition: KdTreeElement.h:75
float getThickness() const
Get thickness of the partition.
Definition: KdTreeElement.h:103
virtual KdTreeElement * getLeft() override
Get left child.
Definition: KdTreeElement.h:133
virtual KdTreeElement * getRight() override
Get right child.
Definition: KdTreeElement.h:156
virtual BSTElement * getLeft() override
Definition: BSTElement.h:88
This class can be used to create K-d Tree elements, derived from BSTElement. K-D trees can be thought...
Definition: KdTreeElement.h:40
KdTreeElement(const K &k, int dim, int th, const KdTreeElement *l, const KdTreeElement *r, const E &val=E(), const string &lab=string())
Definition: KdTreeElement.h:58
these methods convert byte arrays in to base64 codes and are used in BRIDGES to represent the color a...
Definition: alltypes.h:4
K getPartitioner() const
Get partitioner value.
Definition: KdTreeElement.h:118
virtual const KdTreeElement * getLeft() const override
Get left child - constant version.
Definition: KdTreeElement.h:141
void setDimension(const int &dim)
Set partitioning dimension to "dim".
Definition: KdTreeElement.h:96
void setPartitioner(const K &p)
Set partitioning dimension to "dim".
Definition: KdTreeElement.h:126
virtual const string getElementRepresentation() const override
Definition: BSTElement.h:134
const string COMMA
Definition: DataStructure.h:50
const string QUOTE
Definition: DataStructure.h:49
virtual const string getElementRepresentation() const override
get kd tree element representation as JSON string
Definition: KdTreeElement.h:179
void setRight(BSTElement *r)
Definition: BSTElement.h:127
virtual const KdTreeElement * getRight() const override
Get right child - Constant version.
Definition: KdTreeElement.h:164
std::string JSONencode(const T &d)
Definition: JSONutil.h:37