Lines Matching defs:_data
352 : _data(new PathData())
357 _data->curves.push_back(_closing_seg);
363 : _data(new PathData())
368 _data->curves.push_back(i->duplicate());
370 if (!_data->curves.empty()) {
371 _closing_seg = new ClosingSegment(_data->curves.back().finalPoint(),
372 _data->curves.front().initialPoint());
376 _data->curves.push_back(_closing_seg);
396 swap(other._data, _data);
406 Curve const &operator[](size_type i) const { return _data->curves[i]; }
408 Curve const &at(size_type i) const { return _data->curves.at(i); }
413 Curve const &front() const { return _data->curves.front(); }
415 Curve const &initialCurve() const { return _data->curves.front(); }
419 if (empty()) return _data->curves.back();
420 return _data->curves[_data->curves.size() - 2];
424 ? _data->curves[_data->curves.size() - 2]
425 : _data->curves[_data->curves.size() - 1];
446 size_type size_open() const { return _data->curves.size() - 1; }
452 return _closing_seg->isDegenerate() ? _data->curves.size() - 1 : _data->curves.size();
462 size_type max_size() const { return _data->curves.max_size() - 1; }
470 bool empty() const { return (_data->curves.size() == 1); }
507 for (std::size_t i = 0; i < _data->curves.size(); ++i) {
508 _data->curves[i] *= tr;
674 _data->curves.front().setInitial(p);
680 _data->curves[size_open() - 1].setFinal(p);
816 return iter.path->_data->curves.begin() + iter.index;
819 return iter.path->_data->curves.begin() + iter.index;
829 if (!_data.unique()) {
830 _data.reset(new PathData(*_data));
831 _closing_seg = static_cast<ClosingSegment*>(&_data->curves.back());
833 _data->fast_bounds = OptRect();
843 boost::shared_ptr<PathData> _data;