14192
|
1 /*
|
|
2 * nmmessage.h
|
|
3 *
|
|
4 * Copyright (c) 2004 Novell, Inc. All Rights Reserved.
|
|
5 *
|
|
6 * This program is free software; you can redistribute it and/or modify
|
|
7 * it under the terms of the GNU General Public License as published by
|
|
8 * the Free Software Foundation; version 2 of the License.
|
|
9 *
|
|
10 * This program is distributed in the hope that it will be useful,
|
|
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13 * GNU General Public License for more details.
|
|
14 *
|
|
15 * You should have received a copy of the GNU General Public License
|
|
16 * along with this program; if not, write to the Free Software
|
|
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
18 *
|
|
19 */
|
|
20
|
|
21 #ifndef __NM_MESSAGE_H__
|
|
22 #define __NM_MESSAGE_H__
|
|
23
|
|
24 typedef struct _NMMessage NMMessage;
|
|
25
|
|
26 #include "nmconference.h"
|
|
27
|
|
28 /**
|
|
29 * Creates a new message.
|
|
30 *
|
|
31 * The returned message should be released by calling
|
|
32 * nm_release_message
|
|
33 *
|
|
34 * @param text The message text
|
|
35 * @return A newly allocated message
|
|
36 */
|
|
37 NMMessage *nm_create_message(const char *text);
|
|
38
|
|
39 /**
|
|
40 * Increment the reference count for the message object.
|
|
41 *
|
|
42 * @param msg The message
|
|
43 */
|
|
44 void nm_message_add_ref(NMMessage * msg);
|
|
45
|
|
46 /**
|
|
47 * Releases a message.
|
|
48 *
|
|
49 * @param msg The message
|
|
50 */
|
|
51 void nm_release_message(NMMessage * msg);
|
|
52
|
|
53 /**
|
|
54 * Returns the message text
|
|
55 *
|
|
56 * @param msg The message
|
|
57 * @return The message text
|
|
58 */
|
|
59 const char *nm_message_get_text(NMMessage * msg);
|
|
60
|
|
61 /**
|
|
62 * Sets the conference object for a message
|
|
63 *
|
|
64 * @param msg The message
|
|
65 * @param conf The conference to associate with the message
|
|
66 * @return RVALUE_OK on success
|
|
67 */
|
|
68 void nm_message_set_conference(NMMessage * msg, NMConference * conf);
|
|
69
|
|
70 /**
|
|
71 * Returns the conference object associated with the message
|
|
72 *
|
|
73 * Note: this does not increment the reference count for the
|
|
74 * conference and the conference should NOT be released with
|
|
75 * nm_release_conference. If the reference needs to be kept
|
|
76 * around nm_conference_add_ref should be called.
|
|
77 *
|
|
78 * @param msg The message
|
|
79 * @return The conference associated with this message
|
|
80 */
|
|
81 NMConference *nm_message_get_conference(NMMessage * msg);
|
|
82
|
|
83 #endif
|