IAnnotationVisitor.h
1 #pragma once
2 // Copyright (c) 2001-2024 Aspose Pty Ltd. All Rights Reserved.
3 
4 #include <system/object.h>
5 
6 #include "Aspose.PDF.Cpp/aspose_pdf_api_defs.h"
7 
8 namespace Aspose
9 {
10 namespace Pdf
11 {
12 namespace Annotations
13 {
14 class BleedMarkAnnotation;
15 class CaretAnnotation;
16 class CircleAnnotation;
17 class FileAttachmentAnnotation;
18 class FreeTextAnnotation;
19 class HighlightAnnotation;
20 class InkAnnotation;
21 class LineAnnotation;
22 class LinkAnnotation;
23 class MovieAnnotation;
24 class PageInformationAnnotation;
25 class PolygonAnnotation;
26 class PolylineAnnotation;
27 class PopupAnnotation;
28 class RegistrationMarkAnnotation;
29 class ScreenAnnotation;
30 class SquareAnnotation;
31 class SquigglyAnnotation;
32 class StampAnnotation;
33 class StrikeOutAnnotation;
34 class TextAnnotation;
35 class TrimMarkAnnotation;
36 class UnderlineAnnotation;
37 class WidgetAnnotation;
38 } // namespace Annotations
39 } // namespace Pdf
40 } // namespace Aspose
41 
42 namespace Aspose {
43 
44 namespace Pdf {
45 
46 namespace Annotations {
47 
51 class ASPOSE_PDF_SHARED_CLASS IAnnotationVisitor : public virtual System::Object
52 {
54  typedef System::Object BaseType;
55 
56  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
57  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
58 
59 public:
60 
67  virtual void Visit(System::SharedPtr<LinkAnnotation> link) = 0;
74  virtual void Visit(System::SharedPtr<FileAttachmentAnnotation> attachment) = 0;
81  virtual void Visit(System::SharedPtr<TextAnnotation> text) = 0;
88  virtual void Visit(System::SharedPtr<FreeTextAnnotation> freetext) = 0;
95  virtual void Visit(System::SharedPtr<HighlightAnnotation> highlight) = 0;
102  virtual void Visit(System::SharedPtr<UnderlineAnnotation> underline) = 0;
109  virtual void Visit(System::SharedPtr<StrikeOutAnnotation> strikeOut) = 0;
116  virtual void Visit(System::SharedPtr<SquigglyAnnotation> squiggly) = 0;
123  virtual void Visit(System::SharedPtr<PopupAnnotation> popup) = 0;
130  virtual void Visit(System::SharedPtr<LineAnnotation> line) = 0;
137  virtual void Visit(System::SharedPtr<CircleAnnotation> circle) = 0;
144  virtual void Visit(System::SharedPtr<SquareAnnotation> square) = 0;
151  virtual void Visit(System::SharedPtr<InkAnnotation> ink) = 0;
158  virtual void Visit(System::SharedPtr<PolylineAnnotation> polyline) = 0;
165  virtual void Visit(System::SharedPtr<PolygonAnnotation> polygon) = 0;
172  virtual void Visit(System::SharedPtr<CaretAnnotation> caret) = 0;
179  virtual void Visit(System::SharedPtr<StampAnnotation> stamp) = 0;
186  virtual void Visit(System::SharedPtr<WidgetAnnotation> widget) = 0;
193  virtual void Visit(System::SharedPtr<MovieAnnotation> movie) = 0;
200  virtual void Visit(System::SharedPtr<ScreenAnnotation> screen) = 0;
205  virtual void Visit(System::SharedPtr<TrimMarkAnnotation> trimMark) = 0;
210  virtual void Visit(System::SharedPtr<BleedMarkAnnotation> bleedMark) = 0;
215  virtual void Visit(System::SharedPtr<RegistrationMarkAnnotation> registrationMark) = 0;
220  virtual void Visit(System::SharedPtr<PageInformationAnnotation> pageInformation) = 0;
221 
222 };
223 
224 } // namespace Annotations
225 } // namespace Pdf
226 } // namespace Aspose
227 
228 
Base class that enables using methods available for System.Object class in C#. All non-trivial classe...
Definition: object.h:64
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: fwd.h:22
Definition: AFRelationship.h:4
Whole PDF file will be submitted.
Defines Visitor for visiting different document annotations.
Definition: IAnnotationVisitor.h:51