annotate python/python-libpst.cpp @ 196:ffd1503a7530

build proper python rpm subpackage
author Carl Byington <carl@five-ten-sg.com>
date Wed, 22 Apr 2009 13:52:18 -0700
parents 320cfcba8058
children 7c60d6d1c681
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
1 #ifdef HAVE_CONFIG_H
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
2 #include "config.h"
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
3 #endif
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
4
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
5 #include <iostream>
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
6 #include <boost/python.hpp>
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
7 // #include <boost/python/docstring_options.hpp>
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
8 // #include <iostream>
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
9
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
10 extern "C" {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
11 #include "libpst.h"
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
12 #include "timeconv.h"
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
13 #include "libstrfunc.h"
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
14 #include "vbuf.h"
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
15 #include "lzfu.h"
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
16 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
17
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
18 using namespace std;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
19 using namespace boost::python;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
20
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
21
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
22 /** python version of pst_binary, where python is
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
23 responsible for freeing the underlying buffer */
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
24 struct ppst_binary : public pst_binary
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
25 {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
26 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
27
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
28 class pst {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
29 public:
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
30 pst(const string filename);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
31 virtual ~pst();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
32 pst_desc_tree* pst_getTopOfFolders();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
33 ppst_binary pst_attach_to_mem(pst_item_attach *attach);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
34 size_t pst_attach_to_file(pst_item_attach *attach, FILE* fp);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
35 size_t pst_attach_to_file_base64(pst_item_attach *attach, FILE* fp);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
36 pst_desc_tree* pst_getNextDptr(pst_desc_tree* d);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
37 pst_item* pst_parse_item(pst_desc_tree *d_ptr, pst_id2_tree *m_head);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
38 void pst_freeItem(pst_item *item);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
39 pst_index_ll* pst_getID(uint64_t i_id);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
40 int pst_decrypt(uint64_t i_id, char *buf, size_t size, unsigned char type);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
41 size_t pst_ff_getIDblock_dec(uint64_t i_id, char **buf);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
42 size_t pst_ff_getIDblock(uint64_t i_id, char** buf);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
43 string pst_rfc2426_escape(char *str);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
44 string pst_rfc2425_datetime_format(const FILETIME *ft);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
45 string pst_rfc2445_datetime_format(const FILETIME *ft);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
46 string pst_default_charset(pst_item *item);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
47 void pst_convert_utf8_null(pst_item *item, pst_string *str);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
48 void pst_convert_utf8(pst_item *item, pst_string *str);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
49
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
50 /** helper for python access to fopen() */
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
51 FILE* ppst_open_file(string filename, string mode);
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
52 /** helper for python access to fclose() */
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
53 int ppst_close_file(FILE* fp);
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
54
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
55 private:
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
56 bool is_open;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
57 pst_file pf;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
58 pst_item* root;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
59 pst_desc_tree* topf;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
60
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
61 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
62
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
63
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
64 pst::pst(const string filename) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
65 char *f = (char *)filename.c_str(); // ok, since pst_open does not actually modify this buffer, and newer versions will change the signature to const anyway
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
66 is_open = (::pst_open(&pf, f) == 0);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
67 root = NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
68 topf = NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
69 if (is_open) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
70 ::pst_load_index(&pf);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
71 ::pst_load_extended_attributes(&pf);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
72 root = ::pst_parse_item(&pf, pf.d_head, NULL);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
73 topf = ::pst_getTopOfFolders(&pf, root)->child;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
74 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
75 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
76
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
77 pst::~pst() {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
78 if (root) pst_freeItem(root);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
79 if (is_open) ::pst_close(&pf);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
80 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
81
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
82 pst_desc_tree* pst::pst_getTopOfFolders() {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
83 return topf;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
84 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
85
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
86 ppst_binary pst::pst_attach_to_mem(pst_item_attach *attach) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
87 ppst_binary rc;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
88 rc.size = rc.size = ::pst_attach_to_mem(&pf, attach, &rc.data);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
89 return rc;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
90 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
91
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
92 size_t pst::pst_attach_to_file(pst_item_attach *attach, FILE* fp) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
93 return ::pst_attach_to_file(&pf, attach, fp);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
94 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
95
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
96 size_t pst::pst_attach_to_file_base64(pst_item_attach *attach, FILE* fp) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
97 return ::pst_attach_to_file_base64(&pf, attach, fp);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
98 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
99
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
100 pst_desc_tree* pst::pst_getNextDptr(pst_desc_tree* d) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
101 return ::pst_getNextDptr(d);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
102 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
103
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
104 pst_item* pst::pst_parse_item (pst_desc_tree *d_ptr, pst_id2_tree *m_head) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
105 return ::pst_parse_item(&pf, d_ptr, m_head);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
106 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
107
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
108 void pst::pst_freeItem(pst_item *item) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
109 return ::pst_freeItem(item);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
110 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
111
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
112 pst_index_ll* pst::pst_getID(uint64_t i_id) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
113 return ::pst_getID(&pf, i_id);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
114 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
115
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
116 int pst::pst_decrypt(uint64_t i_id, char *buf, size_t size, unsigned char type) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
117 return ::pst_decrypt(i_id, buf, size, type);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
118 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
119
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
120 size_t pst::pst_ff_getIDblock_dec(uint64_t i_id, char **buf) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
121 return ::pst_ff_getIDblock_dec(&pf, i_id, buf);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
122 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
123
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
124 size_t pst::pst_ff_getIDblock(uint64_t i_id, char** buf) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
125 return ::pst_ff_getIDblock(&pf, i_id, buf);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
126 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
127
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
128 string pst::pst_rfc2426_escape(char *str) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
129 return ::pst_rfc2426_escape(str);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
130 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
131
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
132 string pst::pst_rfc2425_datetime_format(const FILETIME *ft) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
133 return ::pst_rfc2425_datetime_format((FILETIME *)ft); // cast away const is ok, since libpst did not modify it anyway, and the signature will change in more recent versions
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
134 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
135
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
136 string pst::pst_rfc2445_datetime_format(const FILETIME *ft) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
137 return ::pst_rfc2445_datetime_format((FILETIME *)ft); // cast away const is ok, since libpst did not modify it anyway, and the signature will change in more recent versions
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
138 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
139
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
140 string pst::pst_default_charset(pst_item *item) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
141 return ::pst_default_charset(item);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
142 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
143
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
144 void pst::pst_convert_utf8_null(pst_item *item, pst_string *str) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
145 ::pst_convert_utf8_null(item, str);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
146 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
147
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
148 void pst::pst_convert_utf8(pst_item *item, pst_string *str) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
149 ::pst_convert_utf8(item, str);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
150 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
151
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
152 FILE* pst::ppst_open_file(string filename, string mode) {
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
153 return ::fopen(filename.c_str(), mode.c_str());
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
154 }
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
155
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
156 int pst::ppst_close_file(FILE* fp) {
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
157 return ::fclose(fp);
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
158 }
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
159
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
160 struct make_python_string {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
161 /* we make no distinction between empty and null strings */
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
162 static PyObject* convert(char* const &s) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
163 string ss;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
164 if (s) ss = string(s);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
165 return boost::python::incref(boost::python::object(ss).ptr());
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
166 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
167 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
168
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
169 struct make_python_pst_binary {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
170 static PyObject* convert(pst_binary const &s) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
171 if (s.data) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
172 string ss;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
173 ss = string(s.data, s.size);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
174 return boost::python::incref(boost::python::object(ss).ptr());
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
175 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
176 return NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
177 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
178 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
179
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
180 struct make_python_ppst_binary {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
181 static PyObject* convert(ppst_binary const &s) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
182 if (s.data) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
183 string ss;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
184 ss = string(s.data, s.size);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
185 free(s.data);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
186 return boost::python::incref(boost::python::object(ss).ptr());
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
187 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
188 return NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
189 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
190 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
191
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
192 struct make_python_pst_item_email {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
193 static PyObject* convert(pst_item_email* const &s) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
194 if (s) return to_python_indirect<pst_item_email*, detail::make_reference_holder>()(s);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
195 return NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
196 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
197 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
198
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
199 struct make_python_pst_item_attach {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
200 static PyObject* convert(pst_item_attach* const &s) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
201 if (s) return to_python_indirect<pst_item_attach*, detail::make_reference_holder>()(s);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
202 return NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
203 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
204 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
205
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
206 struct make_python_pst_desc_tree {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
207 static PyObject* convert(pst_desc_tree* const &s) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
208 if (s) return to_python_indirect<pst_desc_tree*, detail::make_reference_holder>()(s);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
209 return NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
210 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
211 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
212
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
213 struct make_python_pst_index_ll {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
214 static PyObject* convert(pst_index_ll* const &s) {
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
215 if (s) return to_python_indirect<pst_index_ll*, detail::make_reference_holder>()(s);
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
216 return NULL;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
217 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
218 };
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
219
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
220 struct make_python_FILE {
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
221 static PyObject* convert(FILE* const &s) {
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
222 if (s) return to_python_indirect<FILE*, detail::make_reference_holder>()(s);
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
223 return NULL;
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
224 }
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
225 };
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
226
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
227 BOOST_PYTHON_MODULE(_libpst)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
228 {
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
229 //boost::python::docstring_options doc_options();
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
230
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
231 to_python_converter<pst_binary, make_python_pst_binary>();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
232 to_python_converter<ppst_binary, make_python_ppst_binary>();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
233 to_python_converter<char*, make_python_string>();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
234 to_python_converter<pst_item_email*, make_python_pst_item_email>();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
235 to_python_converter<pst_item_attach*, make_python_pst_item_attach>();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
236 to_python_converter<pst_desc_tree*, make_python_pst_desc_tree>();
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
237 to_python_converter<pst_index_ll*, make_python_pst_index_ll>();
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
238 to_python_converter<FILE*, make_python_FILE>();
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
239
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
240 class_<FILE>("FILE")
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
241 ;
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
242
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
243 class_<FILETIME>("FILETIME")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
244 .def_readwrite("dwLowDateTime", &FILETIME::dwLowDateTime)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
245 .def_readwrite("dwHighDateTime", &FILETIME::dwHighDateTime)
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
246 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
247
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
248 class_<pst_entryid>("pst_entryid")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
249 .def_readonly("u1", &pst_entryid::u1)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
250 .def_readonly("entryid", &pst_entryid::entryid)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
251 .def_readonly("id", &pst_entryid::id)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
252 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
253
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
254 class_<pst_index_ll>("pst_index_ll")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
255 .def_readonly("i_id", &pst_index_ll::i_id)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
256 .def_readonly("offset", &pst_index_ll::offset)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
257 .def_readonly("size", &pst_index_ll::size)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
258 .def_readonly("u1", &pst_index_ll::u1)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
259 .add_property("next", make_getter(&pst_index_ll::next, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
260 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
261
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
262 class_<pst_id2_tree>("pst_id2_tree")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
263 .def_readonly("id2", &pst_id2_tree::id2)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
264 .add_property("id", make_getter(&pst_id2_tree::id, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
265 .add_property("child", make_getter(&pst_id2_tree::child, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
266 .add_property("next", make_getter(&pst_id2_tree::next, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
267 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
268
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
269 class_<pst_desc_tree>("pst_desc_tree")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
270 .def_readonly("d_id", &pst_desc_tree::d_id)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
271 .def_readonly("parent_d_id", &pst_desc_tree::parent_d_id)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
272 .add_property("desc", make_getter(&pst_desc_tree::desc, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
273 .add_property("assoc_tree", make_getter(&pst_desc_tree::assoc_tree, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
274 .def_readonly("no_child", &pst_desc_tree::no_child)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
275 .add_property("prev", make_getter(&pst_desc_tree::prev, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
276 .add_property("next", make_getter(&pst_desc_tree::next, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
277 .add_property("parent", make_getter(&pst_desc_tree::parent, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
278 .add_property("child", make_getter(&pst_desc_tree::child, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
279 .add_property("child_tail", make_getter(&pst_desc_tree::child_tail, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
280 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
281
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
282 class_<pst_string>("pst_string")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
283 .def_readonly("is_utf8", &pst_string::is_utf8)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
284 .def_readonly("str", &pst_string::str)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
285 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
286
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
287 class_<pst_item_email>("pst_item_email")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
288 .add_property("arrival_date", make_getter(&pst_item_email::arrival_date, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
289 .def_readonly("autoforward", &pst_item_email::autoforward)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
290 .def_readonly("cc_address", &pst_item_email::cc_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
291 .def_readonly("bcc_address", &pst_item_email::bcc_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
292 .def_readonly("conversation_index", &pst_item_email::conversation_index)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
293 .def_readonly("conversion_prohibited", &pst_item_email::conversion_prohibited)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
294 .def_readonly("delete_after_submit", &pst_item_email::delete_after_submit)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
295 .def_readonly("delivery_report", &pst_item_email::delivery_report)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
296 .def_readonly("encrypted_body", &pst_item_email::encrypted_body)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
297 .def_readonly("encrypted_htmlbody", &pst_item_email::encrypted_htmlbody)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
298 .def_readonly("header", &pst_item_email::header)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
299 .def_readonly("htmlbody", &pst_item_email::htmlbody)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
300 .def_readonly("importance", &pst_item_email::importance)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
301 .def_readonly("in_reply_to", &pst_item_email::in_reply_to)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
302 .def_readonly("message_cc_me", &pst_item_email::message_cc_me)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
303 .def_readonly("message_recip_me", &pst_item_email::message_recip_me)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
304 .def_readonly("message_to_me", &pst_item_email::message_to_me)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
305 .def_readonly("messageid", &pst_item_email::messageid)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
306 .def_readonly("original_sensitivity", &pst_item_email::original_sensitivity)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
307 .def_readonly("original_bcc", &pst_item_email::original_bcc)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
308 .def_readonly("original_cc", &pst_item_email::original_cc)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
309 .def_readonly("original_to", &pst_item_email::original_to)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
310 .def_readonly("outlook_recipient", &pst_item_email::outlook_recipient)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
311 .def_readonly("outlook_recipient_name", &pst_item_email::outlook_recipient_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
312 .def_readonly("outlook_recipient2", &pst_item_email::outlook_recipient2)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
313 .def_readonly("outlook_sender", &pst_item_email::outlook_sender)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
314 .def_readonly("outlook_sender_name", &pst_item_email::outlook_sender_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
315 .def_readonly("outlook_sender2", &pst_item_email::outlook_sender2)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
316 .def_readonly("priority", &pst_item_email::priority)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
317 .def_readonly("processed_subject", &pst_item_email::processed_subject)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
318 .def_readonly("read_receipt", &pst_item_email::read_receipt)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
319 .def_readonly("recip_access", &pst_item_email::recip_access)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
320 .def_readonly("recip_address", &pst_item_email::recip_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
321 .def_readonly("recip2_access", &pst_item_email::recip2_access)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
322 .def_readonly("recip2_address", &pst_item_email::recip2_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
323 .def_readonly("reply_requested", &pst_item_email::reply_requested)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
324 .def_readonly("reply_to", &pst_item_email::reply_to)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
325 .def_readonly("return_path_address", &pst_item_email::return_path_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
326 .def_readonly("rtf_body_char_count", &pst_item_email::rtf_body_char_count)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
327 .def_readonly("rtf_body_crc", &pst_item_email::rtf_body_crc)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
328 .def_readonly("rtf_body_tag", &pst_item_email::rtf_body_tag)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
329 .def_readonly("rtf_compressed", &pst_item_email::rtf_compressed)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
330 .def_readonly("rtf_in_sync", &pst_item_email::rtf_in_sync)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
331 .def_readonly("rtf_ws_prefix_count", &pst_item_email::rtf_ws_prefix_count)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
332 .def_readonly("rtf_ws_trailing_count", &pst_item_email::rtf_ws_trailing_count)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
333 .def_readonly("sender_access", &pst_item_email::sender_access)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
334 .def_readonly("sender_address", &pst_item_email::sender_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
335 .def_readonly("sender2_access", &pst_item_email::sender2_access)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
336 .def_readonly("sender2_address", &pst_item_email::sender2_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
337 .def_readonly("sensitivity", &pst_item_email::sensitivity)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
338 .add_property("sent_date", make_getter(&pst_item_email::sent_date, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
339 .add_property("sentmail_folder", make_getter(&pst_item_email::sentmail_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
340 .def_readonly("sentto_address", &pst_item_email::sentto_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
341 .def_readonly("report_text", &pst_item_email::report_text)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
342 .add_property("report_time", make_getter(&pst_item_email::report_time, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
343 .def_readonly("ndr_reason_code", &pst_item_email::ndr_reason_code)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
344 .def_readonly("ndr_diag_code", &pst_item_email::ndr_diag_code)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
345 .def_readonly("supplementary_info", &pst_item_email::supplementary_info)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
346 .def_readonly("ndr_status_code", &pst_item_email::ndr_status_code)
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
347 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
348
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
349 class_<pst_item_folder>("pst_item_folder")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
350 .def_readonly("item_count", &pst_item_folder::item_count)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
351 .def_readonly("unseen_item_count", &pst_item_folder::unseen_item_count)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
352 .def_readonly("assoc_count", &pst_item_folder::assoc_count)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
353 .def_readonly("subfolder", &pst_item_folder::subfolder)
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
354 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
355
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
356 class_<pst_item_message_store>("pst_item_message_store")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
357 .add_property("top_of_personal_folder", make_getter(&pst_item_message_store::top_of_personal_folder, return_value_policy<reference_existing_object>()))
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
358 .add_property("default_outbox_folder", make_getter(&pst_item_message_store::default_outbox_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
359 .add_property("deleted_items_folder", make_getter(&pst_item_message_store::deleted_items_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
360 .add_property("sent_items_folder", make_getter(&pst_item_message_store::sent_items_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
361 .add_property("user_views_folder", make_getter(&pst_item_message_store::user_views_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
362 .add_property("common_view_folder", make_getter(&pst_item_message_store::common_view_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
363 .add_property("search_root_folder", make_getter(&pst_item_message_store::search_root_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
364 .add_property("top_of_folder", make_getter(&pst_item_message_store::top_of_folder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
365 .def_readonly("valid_mask", &pst_item_message_store::valid_mask)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
366 .def_readonly("pwd_chksum", &pst_item_message_store::pwd_chksum)
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
367 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
368
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
369 class_<pst_item_contact>("pst_item_contact")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
370 .def_readonly("access_method", &pst_item_contact::access_method)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
371 .def_readonly("account_name", &pst_item_contact::account_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
372 .def_readonly("address1", &pst_item_contact::address1)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
373 .def_readonly("address1a", &pst_item_contact::address1a)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
374 .def_readonly("address1_desc", &pst_item_contact::address1_desc)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
375 .def_readonly("address1_transport", &pst_item_contact::address1_transport)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
376 .def_readonly("address2", &pst_item_contact::address2)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
377 .def_readonly("address2a", &pst_item_contact::address2a)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
378 .def_readonly("address2_desc", &pst_item_contact::address2_desc)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
379 .def_readonly("address2_transport", &pst_item_contact::address2_transport)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
380 .def_readonly("address3", &pst_item_contact::address3)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
381 .def_readonly("address3a", &pst_item_contact::address3a)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
382 .def_readonly("address3_desc", &pst_item_contact::address3_desc)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
383 .def_readonly("address3_transport", &pst_item_contact::address3_transport)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
384 .def_readonly("assistant_name", &pst_item_contact::assistant_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
385 .def_readonly("assistant_phone", &pst_item_contact::assistant_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
386 .def_readonly("billing_information", &pst_item_contact::billing_information)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
387 .add_property("birthday", make_getter(&pst_item_contact::birthday, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
388 .def_readonly("business_address", &pst_item_contact::business_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
389 .def_readonly("business_city", &pst_item_contact::business_city)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
390 .def_readonly("business_country", &pst_item_contact::business_country)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
391 .def_readonly("business_fax", &pst_item_contact::business_fax)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
392 .def_readonly("business_homepage", &pst_item_contact::business_homepage)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
393 .def_readonly("business_phone", &pst_item_contact::business_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
394 .def_readonly("business_phone2", &pst_item_contact::business_phone2)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
395 .def_readonly("business_po_box", &pst_item_contact::business_po_box)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
396 .def_readonly("business_postal_code", &pst_item_contact::business_postal_code)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
397 .def_readonly("business_state", &pst_item_contact::business_state)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
398 .def_readonly("business_street", &pst_item_contact::business_street)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
399 .def_readonly("callback_phone", &pst_item_contact::callback_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
400 .def_readonly("car_phone", &pst_item_contact::car_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
401 .def_readonly("company_main_phone", &pst_item_contact::company_main_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
402 .def_readonly("company_name", &pst_item_contact::company_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
403 .def_readonly("computer_name", &pst_item_contact::computer_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
404 .def_readonly("customer_id", &pst_item_contact::customer_id)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
405 .def_readonly("def_postal_address", &pst_item_contact::def_postal_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
406 .def_readonly("department", &pst_item_contact::department)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
407 .def_readonly("display_name_prefix", &pst_item_contact::display_name_prefix)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
408 .def_readonly("first_name", &pst_item_contact::first_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
409 .def_readonly("followup", &pst_item_contact::followup)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
410 .def_readonly("free_busy_address", &pst_item_contact::free_busy_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
411 .def_readonly("ftp_site", &pst_item_contact::ftp_site)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
412 .def_readonly("fullname", &pst_item_contact::fullname)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
413 .def_readonly("gender", &pst_item_contact::gender)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
414 .def_readonly("gov_id", &pst_item_contact::gov_id)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
415 .def_readonly("hobbies", &pst_item_contact::hobbies)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
416 .def_readonly("home_address", &pst_item_contact::home_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
417 .def_readonly("home_city", &pst_item_contact::home_city)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
418 .def_readonly("home_country", &pst_item_contact::home_country)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
419 .def_readonly("home_fax", &pst_item_contact::home_fax)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
420 .def_readonly("home_phone", &pst_item_contact::home_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
421 .def_readonly("home_phone2", &pst_item_contact::home_phone2)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
422 .def_readonly("home_po_box", &pst_item_contact::home_po_box)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
423 .def_readonly("home_postal_code", &pst_item_contact::home_postal_code)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
424 .def_readonly("home_state", &pst_item_contact::home_state)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
425 .def_readonly("home_street", &pst_item_contact::home_street)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
426 .def_readonly("initials", &pst_item_contact::initials)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
427 .def_readonly("isdn_phone", &pst_item_contact::isdn_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
428 .def_readonly("job_title", &pst_item_contact::job_title)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
429 .def_readonly("keyword", &pst_item_contact::keyword)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
430 .def_readonly("language", &pst_item_contact::language)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
431 .def_readonly("location", &pst_item_contact::location)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
432 .def_readonly("mail_permission", &pst_item_contact::mail_permission)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
433 .def_readonly("manager_name", &pst_item_contact::manager_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
434 .def_readonly("middle_name", &pst_item_contact::middle_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
435 .def_readonly("mileage", &pst_item_contact::mileage)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
436 .def_readonly("mobile_phone", &pst_item_contact::mobile_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
437 .def_readonly("nickname", &pst_item_contact::nickname)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
438 .def_readonly("office_loc", &pst_item_contact::office_loc)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
439 .def_readonly("common_name", &pst_item_contact::common_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
440 .def_readonly("org_id", &pst_item_contact::org_id)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
441 .def_readonly("other_address", &pst_item_contact::other_address)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
442 .def_readonly("other_city", &pst_item_contact::other_city)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
443 .def_readonly("other_country", &pst_item_contact::other_country)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
444 .def_readonly("other_phone", &pst_item_contact::other_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
445 .def_readonly("other_po_box", &pst_item_contact::other_po_box)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
446 .def_readonly("other_postal_code", &pst_item_contact::other_postal_code)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
447 .def_readonly("other_state", &pst_item_contact::other_state)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
448 .def_readonly("other_street", &pst_item_contact::other_street)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
449 .def_readonly("pager_phone", &pst_item_contact::pager_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
450 .def_readonly("personal_homepage", &pst_item_contact::personal_homepage)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
451 .def_readonly("pref_name", &pst_item_contact::pref_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
452 .def_readonly("primary_fax", &pst_item_contact::primary_fax)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
453 .def_readonly("primary_phone", &pst_item_contact::primary_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
454 .def_readonly("profession", &pst_item_contact::profession)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
455 .def_readonly("radio_phone", &pst_item_contact::radio_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
456 .def_readonly("rich_text", &pst_item_contact::rich_text)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
457 .def_readonly("spouse_name", &pst_item_contact::spouse_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
458 .def_readonly("suffix", &pst_item_contact::suffix)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
459 .def_readonly("surname", &pst_item_contact::surname)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
460 .def_readonly("telex", &pst_item_contact::telex)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
461 .def_readonly("transmittable_display_name", &pst_item_contact::transmittable_display_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
462 .def_readonly("ttytdd_phone", &pst_item_contact::ttytdd_phone)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
463 .add_property("wedding_anniversary", make_getter(&pst_item_contact::wedding_anniversary, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
464 .def_readonly("work_address_street", &pst_item_contact::work_address_street)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
465 .def_readonly("work_address_city", &pst_item_contact::work_address_city)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
466 .def_readonly("work_address_state", &pst_item_contact::work_address_state)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
467 .def_readonly("work_address_postalcode", &pst_item_contact::work_address_postalcode)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
468 .def_readonly("work_address_country", &pst_item_contact::work_address_country)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
469 .def_readonly("work_address_postofficebox", &pst_item_contact::work_address_postofficebox)
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
470 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
471
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
472 class_<pst_item_attach>("pst_item_attach")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
473 .def_readonly("filename1", &pst_item_attach::filename1)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
474 .def_readonly("filename2", &pst_item_attach::filename2)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
475 .def_readonly("mimetype", &pst_item_attach::mimetype)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
476 .def_readonly("data", &pst_item_attach::data)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
477 .def_readonly("id2_val", &pst_item_attach::id2_val)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
478 .def_readonly("i_id", &pst_item_attach::i_id)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
479 .add_property("id2_head", make_getter(&pst_item_attach::id2_head, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
480 .def_readonly("method", &pst_item_attach::method)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
481 .def_readonly("position", &pst_item_attach::position)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
482 .def_readonly("sequence", &pst_item_attach::sequence)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
483 .add_property("next", make_getter(&pst_item_attach::next, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
484 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
485
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
486 class_<pst_item_extra_field>("pst_item_extra_field")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
487 .def_readonly("field_name", &pst_item_extra_field::field_name)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
488 .def_readonly("value", &pst_item_extra_field::value)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
489 .add_property("next", make_getter(&pst_item_extra_field::next, return_value_policy<reference_existing_object>()))
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
490 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
491
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
492 class_<pst_item_journal>("pst_item_journal")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
493 .add_property("end", make_getter(&pst_item_journal::end, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
494 .add_property("start", make_getter(&pst_item_journal::start, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
495 .def_readonly("type", &pst_item_journal::type)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
496 .def_readonly("description", &pst_item_journal::description)
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
497 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
498
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
499 class_<pst_item_appointment>("pst_item_appointment")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
500 .add_property("end", make_getter(&pst_item_appointment::end, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
501 .def_readonly("location", &pst_item_appointment::location)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
502 .add_property("reminder", make_getter(&pst_item_appointment::reminder, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
503 .def_readonly("alarm_minutes", &pst_item_appointment::alarm_minutes)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
504 .def_readonly("alarm_filename", &pst_item_appointment::alarm_filename)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
505 .add_property("start", make_getter(&pst_item_appointment::start, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
506 .def_readonly("timezonestring", &pst_item_appointment::timezonestring)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
507 .def_readonly("showas", &pst_item_appointment::showas)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
508 .def_readonly("label", &pst_item_appointment::label)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
509 .def_readonly("all_day", &pst_item_appointment::all_day)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
510 .def_readonly("recurrence", &pst_item_appointment::recurrence)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
511 .def_readonly("recurrence_type", &pst_item_appointment::recurrence_type)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
512 .add_property("recurrence_start", make_getter(&pst_item_appointment::recurrence_start, return_value_policy<reference_existing_object>()))
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
513 .add_property("recurrence_end", make_getter(&pst_item_appointment::recurrence_end, return_value_policy<reference_existing_object>()))
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
514 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
515
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
516 class_<pst_item>("pst_item")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
517 .add_property("email", make_getter(&pst_item::email, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
518 .add_property("folder", make_getter(&pst_item::folder, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
519 .add_property("contact", make_getter(&pst_item::contact, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
520 .add_property("attach", make_getter(&pst_item::attach, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
521 .add_property("message_store", make_getter(&pst_item::message_store, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
522 .add_property("extra_fields", make_getter(&pst_item::extra_fields, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
523 .add_property("journal", make_getter(&pst_item::journal, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
524 .add_property("appointment", make_getter(&pst_item::appointment, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
525 .def_readonly("type", &pst_item::type)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
526 .def_readonly("ascii_type", &pst_item::ascii_type)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
527 .def_readonly("flags", &pst_item::flags)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
528 .def_readonly("file_as", &pst_item::file_as)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
529 .def_readonly("comment", &pst_item::comment)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
530 .def_readonly("body_charset", &pst_item::body_charset)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
531 .def_readonly("body", &pst_item::body)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
532 .def_readonly("subject", &pst_item::subject)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
533 .def_readonly("internet_cpid", &pst_item::internet_cpid)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
534 .def_readonly("message_codepage", &pst_item::message_codepage)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
535 .def_readonly("message_size", &pst_item::message_size)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
536 .def_readonly("outlook_version", &pst_item::outlook_version)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
537 .def_readonly("record_key", &pst_item::record_key)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
538 .def_readonly("predecessor_change", &pst_item::predecessor_change)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
539 .def_readonly("response_requested", &pst_item::response_requested)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
540 .add_property("create_date", make_getter(&pst_item::create_date, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
541 .add_property("modify_date", make_getter(&pst_item::modify_date, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
542 .def_readonly("private_member", &pst_item::private_member)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
543 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
544
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
545 class_<pst_x_attrib_ll>("pst_x_attrib_ll")
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
546 .def_readonly("mytype", &pst_x_attrib_ll::mytype)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
547 .def_readonly("map", &pst_x_attrib_ll::map)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
548 .def_readonly("data", &pst_x_attrib_ll::data)
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
549 .add_property("next", make_getter(&pst_x_attrib_ll::next, return_value_policy<reference_existing_object>()))
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
550 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
551
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
552 class_<pst_file>("pst_file")
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
553 .add_property("i_head", make_getter(&pst_file::i_head, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
554 .add_property("i_tail", make_getter(&pst_file::i_tail, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
555 .add_property("d_head", make_getter(&pst_file::d_head, return_value_policy<reference_existing_object>()))
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
556 .add_property("d_tail", make_getter(&pst_file::d_tail, return_value_policy<reference_existing_object>()))
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
557 .add_property("x_head", make_getter(&pst_file::x_head, return_value_policy<reference_existing_object>()))
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
558 .def_readonly("do_read64", &pst_file::do_read64)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
559 .def_readonly("index1", &pst_file::index1)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
560 .def_readonly("index1_back", &pst_file::index1_back)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
561 .def_readonly("index2", &pst_file::index2)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
562 .def_readonly("index2_back", &pst_file::index2_back)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
563 .def_readonly("size", &pst_file::size)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
564 .def_readonly("encryption", &pst_file::encryption)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
565 .def_readonly("ind_type", &pst_file::ind_type)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
566 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
567
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
568 class_<pst>("pst", init<string>())
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
569 .def("pst_getTopOfFolders", &pst::pst_getTopOfFolders, return_value_policy<reference_existing_object>())
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
570 .def("pst_attach_to_mem", &pst::pst_attach_to_mem)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
571 .def("pst_attach_to_file", &pst::pst_attach_to_file)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
572 .def("pst_attach_to_file_base64", &pst::pst_attach_to_file_base64)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
573 .def("pst_getNextDptr", &pst::pst_getNextDptr, return_value_policy<reference_existing_object>())
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
574 .def("pst_parse_item", &pst::pst_parse_item, return_value_policy<reference_existing_object>())
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
575 .def("pst_freeItem", &pst::pst_freeItem)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
576 .def("pst_getID", &pst::pst_getID, return_value_policy<reference_existing_object>())
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
577 .def("pst_decrypt", &pst::pst_decrypt)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
578 .def("pst_ff_getIDblock_dec", &pst::pst_ff_getIDblock_dec)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
579 .def("pst_ff_getIDblock", &pst::pst_ff_getIDblock)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
580 .def("pst_rfc2426_escape", &pst::pst_rfc2426_escape)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
581 .def("pst_rfc2425_datetime_format", &pst::pst_rfc2425_datetime_format)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
582 .def("pst_rfc2445_datetime_format", &pst::pst_rfc2445_datetime_format)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
583 .def("pst_default_charset", &pst::pst_default_charset)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
584 .def("pst_convert_utf8_null", &pst::pst_convert_utf8_null)
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
585 .def("pst_convert_utf8", &pst::pst_convert_utf8)
196
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
586 .def("ppst_open_file", &pst::ppst_open_file, return_value_policy<reference_existing_object>())
ffd1503a7530 build proper python rpm subpackage
Carl Byington <carl@five-ten-sg.com>
parents: 195
diff changeset
587 .def("ppst_close_file", &pst::ppst_close_file)
195
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
588 ;
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
589 }
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
590
320cfcba8058 add python module interface to the shared library for easy scripting.
Carl Byington <carl@five-ten-sg.com>
parents:
diff changeset
591