void Tracker::stopTracking() { TrackerHelperPtr tracker = _tracker.lock(); if (!tracker) { PythonSetNullError(); return; } tracker->abortTracking(); }
void Track::reset() { TrackMarkerPtr marker = getInternalMarker(); if (!marker) { PythonSetNullError(); return; } marker->resetTrack(); }
Effect* Group::getNode(const QString& fullySpecifiedName) const { if ( !_collection.lock() ) { PythonSetNullError(); return 0; } NodePtr node = _collection.lock()->getNodeByFullySpecifiedName( fullySpecifiedName.toStdString() ); if ( node && node->isActivated() ) { return App::createEffectFromNodeWrapper(node); } else { return NULL; } }
Track* Tracker::createTrack() { KnobItemsTablePtr model = getInternalModel(); if (!model) { PythonSetNullError(); return 0; } TrackMarkerPtr track = TrackMarker::create(model); track->resetCenter(); model->addItem(track, KnobTableItemPtr(), eTableChangeReasonInternal); Track* ret = dynamic_cast<Track*>( ItemsTable::createPyItemWrapper(track) ); assert(ret); return ret; }
void Tracker::startTracking(const std::list<Track*>& marks, int start, int end, bool forward) { TrackerHelperPtr tracker = _tracker.lock(); if (!tracker) { PythonSetNullError(); return; } std::list<TrackMarkerPtr> markers; for (std::list<Track*>::const_iterator it = marks.begin(); it != marks.end(); ++it) { markers.push_back( (*it)->getInternalMarker() ); } tracker->trackMarkers(markers, start, end, forward, (OverlaySupport*)(NULL)); }
std::list<Effect*> Group::getChildren() const { std::list<Effect*> ret; if ( !_collection.lock() ) { PythonSetNullError(); return ret; } NodesList nodes = _collection.lock()->getNodes(); for (NodesList::iterator it = nodes.begin(); it != nodes.end(); ++it) { if ( (*it)->isActivated() ) { Effect* effect = App::createEffectFromNodeWrapper(*it); assert(effect); ret.push_back(effect); } } return ret; }