LayoutCollector.h
1 // Copyright 2001-2021 Aspose Pty Ltd. All Rights Reserved.
3 //
4 // This file is part of Aspose.Words. The source code in this file
5 // is only intended as a supplement to the documentation, and is provided
6 // "as is", without warranty of any kind, either expressed or implied.
9 #pragma once
10 
11 #include <system/object.h>
12 #include <cstdint>
13 
14 #include <Aspose.Words.Cpp/aspose_words_api_defs.h>
15 
16 namespace Aspose { namespace Words { class PageExtractor; } }
17 namespace Aspose { namespace Words { namespace Layout { namespace Core { class SpanGenerator; } } } }
18 namespace Aspose { namespace Words { class Document; } }
19 namespace System { namespace Collections { namespace Generic { template <typename, typename> class Dictionary; } } }
20 namespace Aspose { namespace Collections { template <typename> class ObjToIntDictionary; } }
21 namespace Aspose { namespace Words { class Node; } }
22 namespace Aspose { namespace Words { namespace Layout { namespace Core { class Span; } } } }
23 namespace System { namespace Collections { namespace Generic { template <typename> class List; } } }
24 namespace Aspose { namespace Words { namespace Layout { namespace Core { class Part; } } } }
25 
26 namespace Aspose {
27 
28 namespace Words {
29 
30 namespace Layout {
31 
98 class ASPOSE_WORDS_SHARED_CLASS LayoutCollector : public System::Object
99 {
100  typedef LayoutCollector ThisType;
101  typedef System::Object BaseType;
102 
103  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
104  ASPOSE_WORDS_SHARED_RTTI_INFO_DECL();
105 
106 public:
107 
165 
167  ASPOSE_WORDS_SHARED_API void set_Document(const System::SharedPtr<Aspose::Words::Document>& value);
168 
227  ASPOSE_WORDS_SHARED_API LayoutCollector(const System::SharedPtr<Aspose::Words::Document>& doc);
228 
285  ASPOSE_WORDS_SHARED_API int32_t GetStartPageIndex(const System::SharedPtr<Aspose::Words::Node>& node);
286 
343  ASPOSE_WORDS_SHARED_API int32_t GetEndPageIndex(const System::SharedPtr<Aspose::Words::Node>& node);
344 
402  ASPOSE_WORDS_SHARED_API int32_t GetNumPagesSpanned(const System::SharedPtr<Aspose::Words::Node>& node);
403 
460  ASPOSE_WORDS_SHARED_API void Clear();
461 
533 
534 protected:
535 
536  virtual ASPOSE_WORDS_SHARED_API ~LayoutCollector();
537 
538 private:
539 
544 
545 };
546 
547 }
548 }
549 }