| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2010 The Android Open Source Project | 2 * Copyright 2010 The Android Open Source Project |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 | 8 |
| 9 #ifndef SkPDFTypes_DEFINED | 9 #ifndef SkPDFTypes_DEFINED |
| 10 #define SkPDFTypes_DEFINED | 10 #define SkPDFTypes_DEFINED |
| (...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 339 create the PDF cross reference table. | 339 create the PDF cross reference table. |
| 340 */ | 340 */ |
| 341 class SkPDFObjNumMap : SkNoncopyable { | 341 class SkPDFObjNumMap : SkNoncopyable { |
| 342 public: | 342 public: |
| 343 /** Add the passed object to the catalog. | 343 /** Add the passed object to the catalog. |
| 344 * @param obj The object to add. | 344 * @param obj The object to add. |
| 345 * @return True iff the object was not already added to the catalog. | 345 * @return True iff the object was not already added to the catalog. |
| 346 */ | 346 */ |
| 347 bool addObject(SkPDFObject* obj); | 347 bool addObject(SkPDFObject* obj); |
| 348 | 348 |
| 349 /** Add the passed object to the catalog, as well as all its dependencies. |
| 350 * @param obj The object to add. If nullptr, this is a noop. |
| 351 * @param subs Will be passed to obj->addResources(). |
| 352 */ |
| 353 void addObjectRecursively(SkPDFObject* obj, const SkPDFSubstituteMap& subs); |
| 354 |
| 349 /** Get the object number for the passed object. | 355 /** Get the object number for the passed object. |
| 350 * @param obj The object of interest. | 356 * @param obj The object of interest. |
| 351 */ | 357 */ |
| 352 int32_t getObjectNumber(SkPDFObject* obj) const; | 358 int32_t getObjectNumber(SkPDFObject* obj) const; |
| 353 | 359 |
| 354 const SkTDArray<SkPDFObject*>& objects() const { return fObjects; } | 360 const SkTDArray<SkPDFObject*>& objects() const { return fObjects; } |
| 355 | 361 |
| 356 private: | 362 private: |
| 357 SkTDArray<SkPDFObject*> fObjects; | 363 SkTDArray<SkPDFObject*> fObjects; |
| 358 SkTHashMap<SkPDFObject*, int32_t> fObjectNumbers; | 364 SkTHashMap<SkPDFObject*, int32_t> fObjectNumbers; |
| (...skipping 28 matching lines...) Expand all Loading... |
| 387 }; | 393 }; |
| 388 | 394 |
| 389 #ifdef SK_PDF_IMAGE_STATS | 395 #ifdef SK_PDF_IMAGE_STATS |
| 390 extern SkAtomic<int> gDrawImageCalls; | 396 extern SkAtomic<int> gDrawImageCalls; |
| 391 extern SkAtomic<int> gJpegImageObjects; | 397 extern SkAtomic<int> gJpegImageObjects; |
| 392 extern SkAtomic<int> gRegularImageObjects; | 398 extern SkAtomic<int> gRegularImageObjects; |
| 393 extern void SkPDFImageDumpStats(); | 399 extern void SkPDFImageDumpStats(); |
| 394 #endif // SK_PDF_IMAGE_STATS | 400 #endif // SK_PDF_IMAGE_STATS |
| 395 | 401 |
| 396 #endif | 402 #endif |
| OLD | NEW |