OSDN Git Service

2011/10/26 0:11:48
[nlite/nlite.git] / nlib / nlib.h
1 #pragma once
2
3 #include <qwerty\qwerty_common.h>
4
5 #ifdef NLIB_EXPORTS
6
7
8 #define NLIB_DECLSPEC  __declspec(dllexport)
9
10 #else  //NLIB_EXPORTS
11
12 #ifdef NLIB_DYNAMIC
13 #define NLIB_DECLSPEC  __declspec(dllimport)
14 #else //NLIB_STATIC
15
16 #define NLIB_DECLSPEC extern
17
18 #endif
19
20
21
22 #endif //NLIB_EXPORTS
23
24 //\8c^\92è\8b`
25 //////////////////////////////////////////////////////////////////////////////////////////////////////
26
27 ///
28 ///nlib\82Ì\96ß\82è\92l\82Ì\8c^
29 ///
30 typedef UINT_PTR NLIB_RESULT;
31
32
33
34 ///
35 ///NicoLiveStream\82Ì\83R\81[\83\8b\83o\83b\83N\8aÖ\90\94\82Ì\83C\83x\83\93\83g\83^\83C\83v\8c^
36 ///
37 typedef UINT_PTR                NICOLIVE_EVENT;
38
39 ///
40 ///NicoLiveStream\82Ì\83R\81[\83\8b\83o\83b\83N\8aÖ\90\94\82Ì\83p\83\89\83\81\81[\83^\83^\83C\83v
41 ///
42 typedef UINT_PTR                NICOLIVE_PARAM;
43
44
45
46 ///
47 ///nlib\82Ì\90Ý\92è\83I\83u\83W\83F\83N\83g\83|\83C\83\93\83^
48 ///
49 //typedef struct nlibproperty_t *NlibProperty_P;
50
51 ///
52 ///\83j\83R\83j\83R\90\95ú\91\97\83I\83u\83W\83F\83N\83g\83|\83C\83\93\83^
53 ///
54 typedef struct nicolivestream_t *NicoLiveStream_P;
55
56 ///
57 ///\83j\83R\83j\83R\93®\89æ\94F\8fØ\83I\83u\83W\83F\83N\83g
58 ///
59 typedef struct nicovideoauth_t *NicoVideoAuth_P;
60
61
62
63
64 typedef struct {
65         WCHAR deleted[LENGTH_2048];
66         time_t first_retrieve;
67         WCHAR group_type[LENGTH_2048];
68         WCHAR last_res_body[LENGTH_2048];
69         WCHAR length_seconds[LENGTH_2048];
70         WCHAR mylist_counter[LENGTH_2048];
71         WCHAR num_res[LENGTH_2048];
72         WCHAR thumbnail_url[LENGTH_2048];
73         WCHAR title[LENGTH_2048];
74         time_t update_time;
75         WCHAR video_id[LENGTH_2048];
76         WCHAR view_counter[LENGTH_2048];
77         WCHAR watch_id[LENGTH_2048];
78 }NicoItemData,*NicoItemData_P;
79
80 ///
81 ///\83j\83R\83j\83R\93®\89æ\82¨\8bC\82É\93ü\82è\93®\89æ
82 ///
83 typedef struct {
84         time_t create_time;
85         WCHAR description[LENGTH_2048];
86         NicoItemData itemData;
87         WCHAR item_id[LENGTH_2048];
88         WCHAR item_type[LENGTH_2048];
89         time_t update_time;
90         UINT_PTR watch;
91
92
93 }NicoMyListItem,*NicoMyListItem_P;
94
95 ///
96 ///\83j\83R\83j\83R\90\95ú\91\97\83C\83x\83\93\83g\83n\83\93\83h\83\89
97 ///
98 typedef NLIB_RESULT (*NicoRecvCallBack)(NICOLIVE_EVENT eventType,NicoLiveStream_P pNicoLiveStream,LPVOID option,NICOLIVE_PARAM param1,NICOLIVE_PARAM param2);
99
100 ///
101 ///\83j\83R\83j\83R\83}\83C\83\8a\83X\83g\83C\83x\83\93\83g\83n\83\93\83h\83\89
102 ///
103 typedef NLIB_RESULT (*NicoMyListCallBack)(LPVOID option,NicoMyListItem_P pVideo);
104
105
106
107
108 typedef UCHAR NICOLIVE_PREMIUM;
109 typedef UCHAR NICOLIVE_ANONYMITY;
110
111
112 ///
113 ///\83j\83R\83j\83R\90\95ú\91\97\83`\83\83\83b\83g\83R\83\81\83\93\83g\8d\\91¢\91Ì
114 ///
115 typedef struct{
116         LPCWSTR premium;
117         LPCWSTR anonymity;
118         LPCWSTR thread;
119         LPCWSTR no;
120         LPCWSTR vpos;
121         LPCWSTR date;
122         LPCWSTR locale;
123         LPCWSTR user_id;
124         LPCWSTR name;
125         LPCWSTR chatBuf;
126         LPCWSTR* mail;
127         UINT_PTR mailCount;
128 }NicoLiveChat,*NicoLiveChat_P;
129
130
131
132
133 ///
134 ///\83j\83R\83j\83R\90\95ú\91\97\83X\83\8c\83b\83h\83R\83\81\83\93\83g\8d\\91¢\91Ì
135 ///
136 typedef struct{
137         LPCWSTR thread;
138         LPCWSTR ticket;
139         LPCWSTR last_res;
140         LPCWSTR server_time;
141 }NicoLiveThreadComment,*NicoLiveThreadComment_P;
142
143
144 ///
145 ///\83j\83R\83j\83R\90\95ú\91\97\91\97\90M\8c\8b\89Ê\83R\83\81\83\93\83g\8d\\91¢\91Ì
146 ///
147 typedef struct{
148         LPCWSTR status;
149         LPCWSTR no;
150         LPCWSTR thread;
151 }NicoLiveSendResultComment,*NicoLiveSendResultComment_P;
152
153
154 ///
155 ///\83j\83R\90\83n\81[\83g\83r\81[\83g\8d\\91¢\91Ì
156 ///
157 typedef struct{
158
159         NLIB_RESULT status;
160
161         time_t time;
162
163         UINT_PTR watchCount;
164
165         UINT_PTR commentCount;
166
167         LPCWSTR is_restrict;
168
169         LPCWSTR ticket;
170
171
172 }NicoLiveHeartBeat,*NicoLiveHeartBeat_P;
173
174
175
176 ///
177 ///\83j\83R\83j\83R\93®\89æ\83}\83C\83\8a\83X\83g\83I\83u\83W\83F\83N\83g\83|\83C\83\93\83^
178 ///
179 typedef struct nicomylist_t *NicoMyList_P;
180
181
182 #ifdef __cplusplus
183 extern "C" {
184 #endif
185
186         
187         ///
188         ///nlib\8f\89\8aú\89»\8aÖ\90\94
189         ///
190         NLIB_DECLSPEC NLIB_RESULT InitializeNLIB();
191
192         ///
193         ///nlib\8cã\8en\96\96\8aÖ\90\94
194         ///
195         NLIB_DECLSPEC VOID FinalizeNLIB();
196
197         //
198         //\83j\83R\83j\83R\90\95ú\91\97\8aÖ\98A\8aÖ\90\94
199         /////////////////////////////////////////////////////////////////////////////////////////////////////
200
201         ///
202         ///\83j\83R\83j\83R\90\95ú\91\97\83I\83u\83W\83F\83N\83g\93®\93I\90\90¬
203         ///
204         NLIB_DECLSPEC NicoLiveStream_P NicoLiveStream_new();
205
206         ///
207         ///\93®\93I\82É\90\90¬\82µ\82½\83j\83R\83j\83R\90\95ú\91\97\83I\83u\83W\83F\83N\83g\82ð\94j\8aü
208         ///
209         NLIB_DECLSPEC VOID NicoLiveStream_delete(NicoLiveStream_P* self);
210
211         ///
212         ///\8ew\92è\82µ\82½URL\82Ì\95ú\91\97\82É\90Ú\91±
213         ///
214         NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCWSTR url,NicoRecvCallBack callback,LPVOID option);
215         
216
217         ///
218         ///\95ú\91\97\82Æ\82Ì\90Ú\91±\82ð\90Ø\92f\82·\82é
219         ///
220         NLIB_DECLSPEC VOID NicoLiveStream_disConnect(NicoLiveStream_P self);
221
222         ///
223         ///\90Ú\91±\8e\9e\82Ì\8eó\90M\82·\82é\83R\83\81\83\93\83g\90\94\82ð\90Ý\92è
224         ///
225         NLIB_DECLSPEC VOID SetResFrom(INT_PTR res);
226
227
228         ///
229         ///\90Ú\91±\8e\9e\82Ì\8eó\90M\82·\82é\83R\83\81\83\93\83g\90\94\82ð\8eæ\93¾
230         ///
231         NLIB_DECLSPEC INT_PTR GetResFrom();
232
233         ///
234         ///\83n\81[\83g\83r\81[\83g\82Ì\8aÔ\8au\82ð\90Ý\92è\81i\83~\83\8a\95b)
235         ///
236         NLIB_DECLSPEC VOID SetHeartBeatMsec(DWORD msec);
237
238
239         ///
240         ///\83n\81[\83g\83r\81[\83g\82Ì\8aÔ\8au\82ð\8eæ\93¾(\83~\83\8a\95b)
241         ///
242         NLIB_DECLSPEC DWORD GetHeartBeatMsec();
243
244         ///
245         ///\83n\81[\83g\83r\81[\83g\97L\8cø\81E\96³\8cø\90Ý\92è
246         ///
247         NLIB_DECLSPEC VOID SetHeartBeatFlag(BOOL flag);
248
249
250         ///
251         ///\83n\81[\83g\83r\81[\83g\97L\8cø\83t\83\89\83O\8eæ\93¾
252         ///
253         NLIB_DECLSPEC BOOL GetHeartBeatFlag();
254
255         ///
256         ///\83L\81[\83v\83A\83\89\83C\83u\82Ì\8aÔ\8au\82ð\90Ý\92è(\83~\83\8a\95b)
257         ///
258         NLIB_DECLSPEC VOID SetKeapALiveMsec(DWORD msec);
259
260         ///
261         ///\83L\81[\83v\83A\83\89\83C\83u\82Ì\8aÔ\8au\82ð\8eæ\93¾(\83~\83\8a\95b)
262         ///
263         NLIB_DECLSPEC DWORD GetKeapALiveMsec();
264
265
266         ///
267         ///\83L\81[\83v\83A\83\89\83C\83u\97L\8cø\81E\96³\8cø\90Ý\92è
268         ///
269         NLIB_DECLSPEC VOID SetKeapALiveFlag(BOOL flag);
270
271
272         ///
273         ///\83L\81[\83v\83A\83\89\83C\83u\83t\83\89\83O\8eæ\93¾
274         ///
275         NLIB_DECLSPEC BOOL GetKeapALiveFlag();
276
277
278         ///
279         ///\83R\83\81\83\93\83g\91\97\90M
280         ///
281         NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWSTR *mail,LPCWSTR *extends);
282
283         ///
284         ///\83n\81[\83g\83r\81[\83g\91\97\90M
285         ///
286         NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_sendHeartBeat(NicoLiveStream_P self);
287
288
289         //
290         //\83j\83R\83j\83R\93®\89æ\94F\8fØ\8aÖ\98A\8aÖ\90\94
291         /////////////////////////////////////////////////////////////////////////////////////////////////
292         
293         ///
294         ///\83j\83R\83j\83R\93®\89æ\94F\8fØ\83I\83u\83W\83F\83N\83g\90\90¬
295         ///
296         NLIB_DECLSPEC NicoVideoAuth_P NicoVideoAuth_new();
297
298         ///
299         ///\83j\83R\83j\83R\93®\89æ\94F\8fØ\83I\83u\83W\83F\83N\83g\94j\8aü
300         ///
301         NLIB_DECLSPEC VOID NicoVideoAuth_delete(NicoVideoAuth_P *self);
302
303
304         ///
305         ///\83j\83R\83j\83R\93®\89æ\94F\8fØ\8fî\95ñ\8eæ\93¾
306         ///
307         NLIB_DECLSPEC NLIB_RESULT NicoVideoAuth_getNicoVideoAuth(NicoVideoAuth_P self,BROWSERTYPE browserType);
308
309
310         //
311         //\83j\83R\83j\83R\93®\89æ\83}\83C\83\8a\83X\83g\8aÖ\98A\8aÖ\90\94
312         ////////////////////////////////////////////////////////////////////////////////////////////////////
313
314         ///
315         ///\82Æ\82è\82 \82¦\82¸\83}\83C\83\8a\83X\83g\88ê\97\97\8eæ\93¾
316         ///
317         NLIB_DECLSPEC NLIB_RESULT NicoMyList_getDefList(NicoVideoAuth_P pAuth,NicoMyListCallBack callback);
318
319
320
321
322
323
324
325
326
327
328
329 #ifdef __cplusplus
330 }
331 #endif