Lines Matching refs:rhs

56 Region::Region(const Region& rhs)
57 : mStorage(rhs.mStorage)
60 validate(rhs, "rhs copy-ctor");
64 Region::Region(const Rect& rhs) {
65 mStorage.add(rhs);
72 Region& Region::operator = (const Region& rhs)
76 validate(rhs, "rhs.operator=");
78 mStorage = rhs.mStorage;
141 Region& Region::orSelf(const Region& rhs) {
142 return operationSelf(rhs, op_or);
144 Region& Region::xorSelf(const Region& rhs) {
145 return operationSelf(rhs, op_xor);
147 Region& Region::andSelf(const Region& rhs) {
148 return operationSelf(rhs, op_and);
150 Region& Region::subtractSelf(const Region& rhs) {
151 return operationSelf(rhs, op_nand);
153 Region& Region::operationSelf(const Region& rhs, int op) {
155 boolean_operation(op, *this, lhs, rhs);
166 const Region Region::merge(const Rect& rhs) const {
167 return operation(rhs, op_or);
169 const Region Region::mergeExclusive(const Rect& rhs) const {
170 return operation(rhs, op_xor);
172 const Region Region::intersect(const Rect& rhs) const {
173 return operation(rhs, op_and);
175 const Region Region::subtract(const Rect& rhs) const {
176 return operation(rhs, op_nand);
178 const Region Region::operation(const Rect& rhs, int op) const {
180 boolean_operation(op, result, *this, rhs);
186 const Region Region::merge(const Region& rhs) const {
187 return operation(rhs, op_or);
189 const Region Region::mergeExclusive(const Region& rhs) const {
190 return operation(rhs, op_xor);
192 const Region Region::intersect(const Region& rhs) const {
193 return operation(rhs, op_and);
195 const Region Region::subtract(const Region& rhs) const {
196 return operation(rhs, op_nand);
198 const Region Region::operation(const Region& rhs, int op) const {
200 boolean_operation(op, result, *this, rhs);
212 Region& Region::orSelf(const Region& rhs, int dx, int dy) {
213 return operationSelf(rhs, dx, dy, op_or);
215 Region& Region::xorSelf(const Region& rhs, int dx, int dy) {
216 return operationSelf(rhs, dx, dy, op_xor);
218 Region& Region::andSelf(const Region& rhs, int dx, int dy) {
219 return operationSelf(rhs, dx, dy, op_and);
221 Region& Region::subtractSelf(const Region& rhs, int dx, int dy) {
222 return operationSelf(rhs, dx, dy, op_nand);
224 Region& Region::operationSelf(const Region& rhs, int dx, int dy, int op) {
226 boolean_operation(op, *this, lhs, rhs, dx, dy);
232 const Region Region::merge(const Region& rhs, int dx, int dy) const {
233 return operation(rhs, dx, dy, op_or);
235 const Region Region::mergeExclusive(const Region& rhs, int dx, int dy) const {
236 return operation(rhs, dx, dy, op_xor);
238 const Region Region::intersect(const Region& rhs, int dx, int dy) const {
239 return operation(rhs, dx, dy, op_and);
241 const Region Region::subtract(const Region& rhs, int dx, int dy) const {
242 return operation(rhs, dx, dy, op_nand);
244 const Region Region::operation(const Region& rhs, int dx, int dy, int op) const {
246 boolean_operation(op, result, *this, rhs, dx, dy);
301 static inline T min(T rhs, T lhs) { return rhs < lhs ? rhs : lhs; }
303 static inline T max(T rhs, T lhs) { return rhs > lhs ? rhs : lhs; }
410 const Region& rhs, int dx, int dy)
414 validate(rhs, "boolean_operation (before): rhs");
422 Rect const * const rhs_rects = rhs.getArray(&rhs_count);
434 validate(rhs, "boolean_operation: rhs");
502 rhs.dump("rhs");
520 const Rect& rhs, int dx, int dy)
522 if (!rhs.isValid()) {
524 op, rhs.left, rhs.top, rhs.right, rhs.bottom);
529 boolean_operation(op, dst, lhs, Region(rhs), dx, dy);
535 region_operator<Rect>::region rhs_region(&rhs, 1, dx, dy);
546 const Region& lhs, const Region& rhs)
548 boolean_operation(op, dst, lhs, rhs, 0, 0);
552 const Region& lhs, const Rect& rhs)
554 boolean_operation(op, dst, lhs, rhs, 0, 0);