VBitmap mSurface;
VMatrix mScaleMatrix;
VSize mViewSize;
- LOTCompositionData *mCompData;
- LOTLayerItem *mRootLayer;
+ LOTCompositionData *mCompData{nullptr};
+ LOTLayerItem *mRootLayer{nullptr};
VArenaAlloc mAllocator{2048};
int mCurFrameNo;
bool mKeepAspectRatio{true};
void preprocessStage(const VRect& clip) final;
void updateContent() final;
std::vector<VDrawable *> mDrawableList;
- LOTContentGroupItem *mRoot;
+ LOTContentGroupItem *mRoot{nullptr};
};
class LOTNullLayerItem: public LOTLayerItem
VRle rle();
void preprocess(const VRect &clip);
public:
- LOTMaskData *mData;
+ LOTMaskData *mData{nullptr};
VPath mLocalPath;
VPath mFinalPath;
VRasterizer mRasterizer;
explicit LOTRectItem(LOTRectData *data);
protected:
void updatePath(VPath& path, int frameNo) final;
- LOTRectData *mData;
+ LOTRectData *mData{nullptr};
bool hasChanged(int prevFrame, int curFrame) final {
return (mData->mPos.changed(prevFrame, curFrame) ||
explicit LOTEllipseItem(LOTEllipseData *data);
private:
void updatePath(VPath& path, int frameNo) final;
- LOTEllipseData *mData;
+ LOTEllipseData *mData{nullptr};
bool hasChanged(int prevFrame, int curFrame) final {
return (mData->mPos.changed(prevFrame, curFrame) ||
mData->mSize.changed(prevFrame, curFrame));
explicit LOTShapeItem(LOTShapeData *data);
private:
void updatePath(VPath& path, int frameNo) final;
- LOTShapeData *mData;
+ LOTShapeData *mData{nullptr};
bool hasChanged(int prevFrame, int curFrame) final {
return mData->mShape.changed(prevFrame, curFrame);
}
explicit LOTPolystarItem(LOTPolystarData *data);
private:
void updatePath(VPath& path, int frameNo) final;
- LOTPolystarData *mData;
+ LOTPolystarData *mData{nullptr};
bool hasChanged(int prevFrame, int curFrame) final {
return (mData->mPos.changed(prevFrame, curFrame) ||
protected:
bool updateContent(int frameNo, const VMatrix &matrix, float alpha) final;
private:
- LOTGFillData *mData;
+ LOTGFillData *mData{nullptr};
std::unique_ptr<VGradient> mGradient;
};
protected:
bool updateContent(int frameNo, const VMatrix &matrix, float alpha) final;
private:
- LOTGStrokeData *mData;
+ LOTGStrokeData *mData{nullptr};
std::unique_ptr<VGradient> mGradient;
};
};
Cache mCache;
std::vector<LOTPathDataItem *> mPathItems;
- LOTTrimData *mData;
+ LOTTrimData *mData{nullptr};
VPathMesure mPathMesure;
bool mDirty{true};
};
void update(int frameNo, const VMatrix &parentMatrix, float parentAlpha, const DirtyFlag &flag) final;
void renderList(std::vector<VDrawable *> &list) final;
private:
- LOTRepeaterData *mRepeaterData;
+ LOTRepeaterData *mRepeaterData{nullptr};
bool mHidden{false};
int mCopies{0};
};
};
union {
Data mData;
- char *mPtr;
+ char *mPtr{nullptr};
};
};
VMatrix mMatrix;
};
union details {
- TransformData *mData;
+ TransformData *mData{nullptr};
static_data mStaticData;
details(){};
details(const details&) = delete;
std::string mPreCompRefId;
LOTAnimatable<float> mTimeRemap; /* "tm" */
LOTCompositionData *mCompRef{nullptr};
- LOTAsset *mAsset;
+ LOTAsset *mAsset{nullptr};
std::vector<LOTMaskData *> mMasks;
};
long mEndFrame{0};
float mFrameRate{60};
LottieBlendMode mBlendMode{LottieBlendMode::Normal};
- LOTLayerData *mRootLayer;
+ LOTLayerData *mRootLayer{nullptr};
std::unordered_map<std::string,
LOTAsset*> mAssets;