Delta Chat Core C-API
dc_mimefactory.h
1 #ifndef __DC_MIMEFACTORY_H__
2 #define __DC_MIMEFACTORY_H__
3 #ifdef __cplusplus
4 extern "C" {
5 #endif
6 
7 
8 typedef struct _dc_mimefactory dc_mimefactory_t;
9 
10 
11 #define DC_CMD_GROUPNAME_CHANGED 2
12 #define DC_CMD_GROUPIMAGE_CHANGED 3
13 #define DC_CMD_MEMBER_ADDED_TO_GROUP 4
14 #define DC_CMD_MEMBER_REMOVED_FROM_GROUP 5
15 #define DC_CMD_AUTOCRYPT_SETUP_MESSAGE 6
16 #define DC_CMD_SECUREJOIN_MESSAGE 7
17 
18 
19 typedef enum {
20  DC_MF_NOTHING_LOADED = 0,
21  DC_MF_MSG_LOADED,
22  DC_MF_MDN_LOADED
23 } dc_mimefactory_loaded_t;
24 
25 
29 struct _dc_mimefactory {
30 
33  /* in: parameters, set eg. by dc_mimefactory_load_msg() */
34  char* from_addr;
35  char* from_displayname;
36  char* selfstatus;
37  clist* recipients_names;
38  clist* recipients_addr;
39  time_t timestamp;
40  char* rfc724_mid;
41 
42  /* what is loaded? */
43  dc_mimefactory_loaded_t loaded;
44 
45  dc_msg_t* msg;
46  dc_chat_t* chat;
47  int increation;
48  char* in_reply_to;
49  char* references;
50  int req_mdn;
51 
52  // out: after a call to dc_mimefactory_render(), here's the data or the error
53  MMAPString* out;
54  int out_encrypted;
55  char* error;
56 
57  /* private */
58  dc_context_t* context;
59 
60 };
61 
62 
63 void dc_mimefactory_init (dc_mimefactory_t*, dc_context_t*);
64 void dc_mimefactory_empty (dc_mimefactory_t*);
65 int dc_mimefactory_load_msg (dc_mimefactory_t*, uint32_t msg_id);
66 int dc_mimefactory_load_mdn (dc_mimefactory_t*, uint32_t msg_id);
67 int dc_mimefactory_render (dc_mimefactory_t*);
68 
69 
70 #ifdef __cplusplus
71 } /* /extern "C" */
72 #endif
73 #endif /* __DC_MIMEFACTORY_H__ */
74 
An object representing a single account.
An object representing a single chat in memory.
An object representing a single message in memory.