Path: blob/master/thirdparty/msdfgen/core/EdgeHolder.cpp
9903 views
1#include "EdgeHolder.h"23namespace msdfgen {45void EdgeHolder::swap(EdgeHolder &a, EdgeHolder &b) {6EdgeSegment *tmp = a.edgeSegment;7a.edgeSegment = b.edgeSegment;8b.edgeSegment = tmp;9}1011EdgeHolder::EdgeHolder(const EdgeHolder &orig) : edgeSegment(orig.edgeSegment ? orig.edgeSegment->clone() : NULL) { }1213#ifdef MSDFGEN_USE_CPP1114EdgeHolder::EdgeHolder(EdgeHolder &&orig) : edgeSegment(orig.edgeSegment) {15orig.edgeSegment = NULL;16}17#endif1819EdgeHolder::~EdgeHolder() {20delete edgeSegment;21}2223EdgeHolder &EdgeHolder::operator=(const EdgeHolder &orig) {24if (this != &orig) {25delete edgeSegment;26edgeSegment = orig.edgeSegment ? orig.edgeSegment->clone() : NULL;27}28return *this;29}3031#ifdef MSDFGEN_USE_CPP1132EdgeHolder &EdgeHolder::operator=(EdgeHolder &&orig) {33if (this != &orig) {34delete edgeSegment;35edgeSegment = orig.edgeSegment;36orig.edgeSegment = NULL;37}38return *this;39}40#endif4142EdgeSegment &EdgeHolder::operator*() {43return *edgeSegment;44}4546const EdgeSegment &EdgeHolder::operator*() const {47return *edgeSegment;48}4950EdgeSegment *EdgeHolder::operator->() {51return edgeSegment;52}5354const EdgeSegment *EdgeHolder::operator->() const {55return edgeSegment;56}5758EdgeHolder::operator EdgeSegment *() {59return edgeSegment;60}6162EdgeHolder::operator const EdgeSegment *() const {63return edgeSegment;64}6566}676869