34 #if defined(ASSERTION_USED)
79 members(other.members),
83 for (
int i = 0; i<longs; ++i) {
88 DECLARE_ASSIGNMENT_OPERATOR(
PART);
90 int count_members()
const;
92 void set_weight(
double pc) {
93 double lenScale = pc/weight;
98 static int byte_pos(
int pos) {
return pos /
sizeof(
PELEM) / 8; }
99 static PELEM bit_mask(
int pos) {
return 1 << (pos % (
sizeof(
PELEM)*8)); }
105 p(info->alloc_mem()),
108 id(info->get_unique_id()),
134 bool only_valid_bits = (last&
get_cutmask()) == last;
135 bool valid_member_count = members >= 0 && members <=
get_maxsize();
136 bool valid_weight = weight >= 0.0;
138 return only_valid_bits && valid_member_count && valid_weight;
146 int idx = byte_pos(pos);
161 int idx = byte_pos(pos);
182 weight += other->weight;
207 for (
int i=0; i<longs; i++) {
208 if ((p[i] & other->p[i]) != p[i]) {
223 unsigned key()
const;
236 #if defined(NTREE_DEBUG_FUNCTIONS)
238 static void start_pretty_printing(
const class CharPtrArray& names_);
239 static void stop_pretty_printing();
244 #error CT_part.hxx included twice
245 #endif // CT_PART_HXX
void set_len(GBT_LEN length)
int topological_cmp(const PART *other) const
bool differs(const PART *other) const
PELEM get_cutmask() const
bool is_leaf_edge() const
CONSTEXPR_INLINE bool is_similar(double d1, double d2, double eps)
void invertInSuperset(const PART *superset)
void set_origin(const TreeNode *node_)
void takeMean(double overall_weight)
int get_nonmembers() const
void addWeightAndLength(const PART *other)
double get_weight() const
PELEM * alloc_mem() const
bool is_standardized() const
PELEM get_cutmask() const
PART * create_root() const
bool bit_is_set(int pos) const
bool disjunct_from(const PART *other) const
bool equals(const PART *other) const
void add_members_from(const PART *source)
int distanceTo(const PART *other, const PART *this_superset, const PART *other_superset) const
void set_faked_weight(double w)
int insertionOrder_cmp(const PART *other) const
PART(const PartitionSize *size_info, double weight_)
bool is_real_son_of(const PART *father) const
const TreeNode * get_origin() const
CONSTEXPR_INLINE bool diff_smaller_epsilon(double d, double eps)
size_t get_unique_id() const
bool is_subset_of(const PART *other) const
int distance_to_tree_center() const
bool overlaps_with(const PART *other) const