1BMessage();
2--------------
3case 1: default construction
4
5BMessage(uint32 what);
6--------------
7case 1: what initialization
8
9BMessage(const BMessage &a_message);
10--------------
11case 1: copy of default constructed
12
13~BMessage();
14--------------
15case 1: Sent message not replied to, so B_NO_REPLY sent
16case 2: Sent message replied to, so B_NO_REPLY not sent
17
18BMessage& operator=(const BMessage &msg);
19--------------
20case 1: assignment of default constructed
21
22status_t	GetInfo(type_code typeRequested, int32 which, char **name,
23					type_code *typeReturned, int32 *count = NULL) const;
24
25status_t	GetInfo(const char *name, type_code *type, int32 *c = 0) const;
26status_t	GetInfo(const char *name, type_code *type, bool *fixed_size) const;
27
28int32		CountNames(type_code type) const;
29bool		IsEmpty() const;
30bool		IsSystem() const;
31bool		IsReply() const;
32void		PrintToStream() const;
33
34status_t	Rename(const char *old_entry, const char *new_entry);
35
36bool		WasDelivered() const;
37bool		IsSourceWaiting() const;
38bool		IsSourceRemote() const;
39BMessenger	ReturnAddress() const;
40const BMessage	*Previous() const;
41bool		WasDropped() const;
42BPoint		DropPoint(BPoint *offset = NULL) const;
43
44status_t	SendReply(uint32 command, BHandler *reply_to = NULL);
45status_t	SendReply(BMessage *the_reply, BHandler *reply_to = NULL,
46					bigtime_t timeout = B_INFINITE_TIMEOUT);
47status_t	SendReply(BMessage *the_reply, BMessenger reply_to,
48					bigtime_t timeout = B_INFINITE_TIMEOUT);
49
50status_t	SendReply(uint32 command, BMessage *reply_to_reply);
51status_t	SendReply(BMessage *the_reply, BMessage *reply_to_reply,
52					bigtime_t send_timeout = B_INFINITE_TIMEOUT,
53					bigtime_t reply_timeout = B_INFINITE_TIMEOUT);
54
55ssize_t		FlattenedSize() const;
56status_t	Flatten(char *buffer, ssize_t size) const;
57status_t	Flatten(BDataIO *stream, ssize_t *size = NULL) const;
58status_t	Unflatten(const char *flat_buffer);
59status_t	Unflatten(BDataIO *stream);
60
61status_t	AddSpecifier(const char *property);
62status_t	AddSpecifier(const char *property, int32 index);
63status_t	AddSpecifier(const char *property, int32 index, int32 range);
64status_t	AddSpecifier(const char *property, const char *name);
65status_t	AddSpecifier(const BMessage *specifier);
66status_t	SetCurrentSpecifier(int32 index);
67status_t	GetCurrentSpecifier(int32 *index, BMessage *specifier = NULL,
68					int32 *form = NULL, const char **property = NULL) const;
69bool		HasSpecifiers() const;
70status_t	PopSpecifier();
71
72status_t	AddInt32(const char *name, int32 val);
73status_t	FindInt32(const char *name, int32 *value) const;
74status_t	FindInt32(const char *name, int32 index, int32 *val) const;
75status_t	ReplaceInt32(const char *name, int32 val);
76status_t	ReplaceInt32(const char *name, int32 index, int32 val);
77bool		HasInt32(const char *, int32 n = 0) const;
78int32		FindInt32(const char *, int32 n = 0) const;
79--------------
80case:	No item added.  HasInt32() should return false; simple FindInt32() should
81		return 0; FindInt32() should return B_NAME_NOT_FOUND and set data param to
82		0; FindData() should return B_NAME_NOT_FOUND and set data param to NULL.
83
84case:	Add single item.  HasInt32() should return true; simple FindInt32() should
85		return added item; FindInt32() should return B_OK and set data param to
86		added item; FindData() should return B_OK and set data param to added item.
87
88case:	Add single item.  Replace item.  HasInt32() should return true;	simple
89		FindInt32() should return replacement; FindInt32() should return B_OK and
90		set data param to replacement; FindData() should return B_OK and set data
91		param to replacement.
92
93case:	No item added.  For index 1:  HasInt32() should return false; simple
94		FindInt32() should return 0; FindInt32() should return B_NAME_NOT_FOUND
95		and set data param to 0; FindData() should return B_NAME_NOT_FOUND and
96		set data param to NULL.
97
98case:	Add multiple items.  For each index:  HasInt32() should return true; simple
99		FindInt32() should return added item; FindInt32() should return B_OK and set
100		data param to added item; FindData() should return B_OK and set data param
101		to added item.
102
103case:	Add multiple items.  Replace item.  For replaced index:  HasInt32() should
104		return true; simple FindInt32() should return replacement; FindInt32()
105		should return B_OK and set data param to replacement; FindData() should
106		return B_OK and set data param to replacement.
107
108case:	Add single item via generic AddData().  HasInt32() should return true; simple
109		FindInt32() should return added item; FindInt32() should return B_OK and set
110		data param to added item; FindData() should return B_OK and set data param to
111		added item.
112
113case:	Add multiple items via generic AddData().  For each index:  HasInt32() should
114		return true; simple FindInt32() should return added item; FindInt32() should
115		return B_OK and set data param to added item; FindData() should return B_OK
116		and set data param to added item.
117
118status_t	AddRect(const char *name, BRect a_rect);
119status_t	AddPoint(const char *name, BPoint a_point);
120status_t	AddString(const char *name, const char *a_string);
121status_t	AddString(const char *name, const BString& a_string);
122status_t	AddInt8(const char *name, int8 val);
123status_t	AddInt16(const char *name, int16 val);
124status_t	AddInt64(const char *name, int64 val);
125status_t	AddBool(const char *name, bool a_boolean);
126status_t	AddFloat(const char *name, float a_float);
127status_t	AddDouble(const char *name, double a_double);
128status_t	AddPointer(const char *name, const void *ptr);
129status_t	AddMessenger(const char *name, BMessenger messenger);
130status_t	AddRef(const char *name, const entry_ref *ref);
131status_t	AddMessage(const char *name, const BMessage *msg);
132status_t	AddFlat(const char *name, BFlattenable *obj, int32 count = 1);
133status_t	AddData(const char *name, type_code type, const void *data,
134				ssize_t numBytes, bool is_fixed_size = true, int32 count = 1);
135
136status_t	RemoveData(const char *name, int32 index = 0);
137status_t	RemoveName(const char *name);
138status_t	MakeEmpty();
139
140status_t	FindRect(const char *name, BRect *rect) const;
141status_t	FindRect(const char *name, int32 index, BRect *rect) const;
142status_t	FindPoint(const char *name, BPoint *pt) const;
143status_t	FindPoint(const char *name, int32 index, BPoint *pt) const;
144status_t	FindString(const char *name, const char **str) const;
145status_t	FindString(const char *name, int32 index, const char **str) const;
146status_t	FindString(const char *name, BString *str) const;
147status_t	FindString(const char *name, int32 index, BString *str) const;
148status_t	FindInt8(const char *name, int8 *value) const;
149status_t	FindInt8(const char *name, int32 index, int8 *val) const;
150status_t	FindInt16(const char *name, int16 *value) const;
151status_t	FindInt16(const char *name, int32 index, int16 *val) const;
152status_t	FindInt64(const char *name, int64 *value) const;
153status_t	FindInt64(const char *name, int32 index, int64 *val) const;
154status_t	FindBool(const char *name, bool *value) const;
155status_t	FindBool(const char *name, int32 index, bool *value) const;
156status_t	FindFloat(const char *name, float *f) const;
157status_t	FindFloat(const char *name, int32 index, float *f) const;
158status_t	FindDouble(const char *name, double *d) const;
159status_t	FindDouble(const char *name, int32 index, double *d) const;
160status_t	FindPointer(const char *name, void **ptr) const;
161status_t	FindPointer(const char *name, int32 index,  void **ptr) const;
162status_t	FindMessenger(const char *name, BMessenger *m) const;
163status_t	FindMessenger(const char *name, int32 index, BMessenger *m) const;
164status_t	FindRef(const char *name, entry_ref *ref) const;
165status_t	FindRef(const char *name, int32 index, entry_ref *ref) const;
166status_t	FindMessage(const char *name, BMessage *msg) const;
167status_t	FindMessage(const char *name, int32 index, BMessage *msg) const;
168status_t	FindFlat(const char *name, BFlattenable *obj) const;
169status_t	FindFlat(const char *name, int32 index, BFlattenable *obj) const;
170status_t	FindData(const char *name, type_code type,
171					const void **data, ssize_t *numBytes) const;
172status_t	FindData(const char *name, type_code type, int32 index,
173					const void **data, ssize_t *numBytes) const;
174
175status_t	ReplaceRect(const char *name, BRect a_rect);
176status_t	ReplaceRect(const char *name, int32 index, BRect a_rect);
177status_t	ReplacePoint(const char *name, BPoint a_point);
178status_t	ReplacePoint(const char *name, int32 index, BPoint a_point);
179status_t	ReplaceString(const char *name, const char *string);
180status_t	ReplaceString(const char *name, int32 index, const char *string);
181status_t	ReplaceString(const char *name, const BString& string);
182status_t	ReplaceString(const char *name, int32 index, const BString& string);
183status_t	ReplaceInt8(const char *name, int8 val);
184status_t	ReplaceInt8(const char *name, int32 index, int8 val);
185status_t	ReplaceInt16(const char *name, int16 val);
186status_t	ReplaceInt16(const char *name, int32 index, int16 val);
187status_t	ReplaceInt64(const char *name, int64 val);
188status_t	ReplaceInt64(const char *name, int32 index, int64 val);
189status_t	ReplaceBool(const char *name, bool a_bool);
190status_t	ReplaceBool(const char *name, int32 index, bool a_bool);
191status_t	ReplaceFloat(const char *name, float a_float);
192status_t	ReplaceFloat(const char *name, int32 index, float a_float);
193status_t	ReplaceDouble(const char *name, double a_double);
194status_t	ReplaceDouble(const char *name, int32 index, double a_double);
195status_t	ReplacePointer(const char *name, const void *ptr);
196status_t	ReplacePointer(const char *name,int32 index,const void *ptr);
197status_t	ReplaceMessenger(const char *name, BMessenger messenger);
198status_t	ReplaceMessenger(const char *name, int32 index, BMessenger msngr);
199status_t	ReplaceRef(	const char *name,const entry_ref *ref);
200status_t	ReplaceRef(	const char *name, int32 index, const entry_ref *ref);
201status_t	ReplaceMessage(const char *name, const BMessage *msg);
202status_t	ReplaceMessage(const char *name, int32 index, const BMessage *msg);
203status_t	ReplaceFlat(const char *name, BFlattenable *obj);
204status_t	ReplaceFlat(const char *name, int32 index, BFlattenable *obj);
205status_t	ReplaceData(const char *name, type_code type,
206						const void *data, ssize_t data_size);
207status_t	ReplaceData(const char *name, type_code type, int32 index,
208						const void *data, ssize_t data_size);
209
210void		*operator new(size_t size);
211void		operator delete(void *ptr, size_t size);
212
213bool		HasRect(const char *, int32 n = 0) const;
214bool		HasPoint(const char *, int32 n = 0) const;
215bool		HasString(const char *, int32 n = 0) const;
216bool		HasInt8(const char *, int32 n = 0) const;
217bool		HasInt16(const char *, int32 n = 0) const;
218bool		HasInt64(const char *, int32 n = 0) const;
219bool		HasBool(const char *, int32 n = 0) const;
220bool		HasFloat(const char *, int32 n = 0) const;
221bool		HasDouble(const char *, int32 n = 0) const;
222bool		HasPointer(const char *, int32 n = 0) const;
223bool		HasMessenger(const char *, int32 n = 0) const;
224bool		HasRef(const char *, int32 n = 0) const;
225bool		HasMessage(const char *, int32 n = 0) const;
226bool		HasFlat(const char *, const BFlattenable *) const;
227bool		HasFlat(const char *,int32 ,const BFlattenable *) const;
228bool		HasData(const char *, type_code , int32 n = 0) const;
229BRect		FindRect(const char *, int32 n = 0) const;
230BPoint		FindPoint(const char *, int32 n = 0) const;
231const char	*FindString(const char *, int32 n = 0) const;
232int8		FindInt8(const char *, int32 n = 0) const;
233int16		FindInt16(const char *, int32 n = 0) const;
234int64		FindInt64(const char *, int32 n = 0) const;
235bool		FindBool(const char *, int32 n = 0) const;
236float		FindFloat(const char *, int32 n = 0) const;
237double		FindDouble(const char *, int32 n = 0) const;
238