summaryrefslogtreecommitdiffhomepage
path: root/dev/prm
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-10-02 16:51:45 +0200
committerAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-10-02 16:51:45 +0200
commit3e30ee1749d19f5188560f9a5cdab922180c71ca (patch)
tree3d9400e1c232c609f66e6b68d6bd90dc621de35a /dev/prm
parentc49f9a9b4e685cc179f5048ada99bf627edaf110 (diff)
IMP: Update setup program for ZKA OS SDK.
Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'dev/prm')
-rw-r--r--dev/prm/pdf.hxx50
-rw-r--r--dev/prm/prm.json23
-rw-r--r--dev/prm/src/pdf.cxx7
3 files changed, 80 insertions, 0 deletions
diff --git a/dev/prm/pdf.hxx b/dev/prm/pdf.hxx
new file mode 100644
index 00000000..24d5be01
--- /dev/null
+++ b/dev/prm/pdf.hxx
@@ -0,0 +1,50 @@
+/* -------------------------------------------
+
+ Copyright ZKA Technologies.
+
+------------------------------------------- */
+
+#pragma once
+
+#include <CompilerKit/Detail.hxx>
+#include <NewKit/Defines.hxx>
+
+namespace Kernel::PDF
+{
+ class IPDFRenderViewport;
+ class IPDFDocument;
+ class IPDFTimestamp;
+ class IPDFTag;
+
+ /// \brief PDF rendering class.
+ class IPDFRenderViewport
+ {
+ public:
+ explicit IPDFRenderViewport() = default;
+ virtual ~IPDFRenderViewport() = default;
+
+ ZKA_COPY_DELETE(IPDFRenderViewport);
+
+ virtual IPDFDocument* GetFirstPage() = 0;
+ virtual IPDFDocument* GetLastPage() = 0;
+
+ virtual IPDFDocument* GetPage(const UInt32& page_number);
+
+ virtual Void SetProducer(const Char*) = 0;
+ virtual Void SetTitle(const Char*) = 0;
+ virtual Void SetAuthor(const Char*) = 0;
+ virtual Void SetSubject(const Char*) = 0;
+
+ virtual const Char* GetProducer() = 0;
+ virtual const Char* GetTitle() = 0;
+ virtual const Char* GetAuthor() = 0;
+ virtual const Char* GetSubject() = 0;
+
+ virtual Bool IsFastView() = 0;
+
+ virtual SizeT GetWidth() = 0;
+ virtual SizeT GetHeight() = 0;
+
+ virtual SizeT GetPageCount() = 0;
+ };
+} // namespace CG::PDF
diff --git a/dev/prm/prm.json b/dev/prm/prm.json
new file mode 100644
index 00000000..25665c7c
--- /dev/null
+++ b/dev/prm/prm.json
@@ -0,0 +1,23 @@
+{
+ "compiler_path": "x86_64-w64-mingw32-g++",
+ "compiler_std": "c++20",
+ "headers_path": ["../", "../zka"],
+ "sources_path": ["src/*.cxx"],
+ "output_name": "prm.sys",
+ "compiler_flags": [
+ "-fPIC",
+ "-ffreestanding",
+ "-shared",
+ "-fno-rtti",
+ "-fno-exceptions",
+ "-Wl,--subsystem=17"
+ ],
+ "cpp_macros": [
+ "__PRM_IMPL__",
+ "__NEWOSKRNL__",
+ "__ZKA_AMD64__",
+ "cPRMVersion=0x0100",
+ "cPRMVersionHighest=0x0100",
+ "cPRMVersionLowest=0x0100"
+ ]
+}
diff --git a/dev/prm/src/pdf.cxx b/dev/prm/src/pdf.cxx
new file mode 100644
index 00000000..3d9cfdf2
--- /dev/null
+++ b/dev/prm/src/pdf.cxx
@@ -0,0 +1,7 @@
+/* -------------------------------------------
+
+ Copyright ZKA Technologies.
+
+------------------------------------------- */
+
+#include <prm/pdf.hxx>