MCPcopy Create free account
hub / github.com/Snapchat/Valdi / createAnimator

Method createAnimator

valdi/src/valdi/android/ViewManager.cpp:193–220  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

191}
192
193Valdi::NativeAnimator ViewManager::createAnimator(snap::valdi_core::AnimationType type,
194 const std::vector<double>& controlPoints,
195 double duration,
196 bool beginFromCurrentState,
197 bool crossfade,
198 double stiffness,
199 double damping) {
200 auto valueArray = Valdi::ValueArray::make(controlPoints.size());
201 for (size_t i = 0; i < controlPoints.size(); i++) {
202 valueArray->emplace(i, Valdi::Value(controlPoints[i]));
203 }
204
205 auto objectJArray = ValdiAndroid::toJavaObject(getEnv(), valueArray);
206 auto object = _createAnimatorMethod.call(toObject(),
207 static_cast<int32_t>(type),
208 objectJArray,
209 duration,
210 beginFromCurrentState,
211 crossfade,
212 stiffness,
213 damping);
214 if (object == nullptr) {
215 return nullptr;
216 }
217
218 return djinni_generated_client::valdi_core::NativeAnimator::toCpp(JavaEnv::getUnsafeEnv(),
219 object.getUnsafeObject());
220}
221
222float ViewManager::getPointScale() const {
223 return _pointScale.load(std::memory_order_relaxed);

Callers 1

visitMethod · 0.45

Calls 8

toJavaObjectFunction · 0.85
toObjectFunction · 0.85
getUnsafeObjectMethod · 0.80
callMethod · 0.65
ValueClass · 0.50
getEnvFunction · 0.50
sizeMethod · 0.45
emplaceMethod · 0.45

Tested by

no test coverage detected