* Turned the private constructor into a SetTo().
* The < operator uses BMessenger::Private now (it's no longer a friend). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11022 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
+15
-15
@@ -492,9 +492,8 @@ BMessenger::Team() const
|
|||||||
|
|
||||||
//----- Private or reserved -----------------------------------------
|
//----- Private or reserved -----------------------------------------
|
||||||
|
|
||||||
// constructor
|
// SetTo
|
||||||
/*! \brief Creates a BMessenger and initializes it to team, target looper port
|
/*! \brief Sets the messenger's team, target looper port and handler token.
|
||||||
and handler token.
|
|
||||||
|
|
||||||
If \a preferred is \c true, \a token is ignored.
|
If \a preferred is \c true, \a token is ignored.
|
||||||
|
|
||||||
@@ -504,11 +503,8 @@ BMessenger::Team() const
|
|||||||
\param preferred \c true to rather use the looper's preferred handler
|
\param preferred \c true to rather use the looper's preferred handler
|
||||||
instead of the one specified by \a token.
|
instead of the one specified by \a token.
|
||||||
*/
|
*/
|
||||||
BMessenger::BMessenger(team_id team, port_id port, int32 token, bool preferred)
|
void
|
||||||
: fPort(-1),
|
BMessenger::SetTo(team_id team, port_id port, int32 token, bool preferred)
|
||||||
fHandlerToken(-1),
|
|
||||||
fTeam(-1),
|
|
||||||
fPreferredTarget(false)
|
|
||||||
{
|
{
|
||||||
fTeam = team;
|
fTeam = team;
|
||||||
fPort = port;
|
fPort = port;
|
||||||
@@ -586,19 +582,23 @@ BMessenger::InitData(const char *signature, team_id team, status_t *result)
|
|||||||
\return \c true, if \a a is less than \a b, \c false otherwise.
|
\return \c true, if \a a is less than \a b, \c false otherwise.
|
||||||
*/
|
*/
|
||||||
bool
|
bool
|
||||||
operator<(const BMessenger &a, const BMessenger &b)
|
operator<(const BMessenger &_a, const BMessenger &_b)
|
||||||
{
|
{
|
||||||
|
BMessenger::Private a(const_cast<BMessenger&>(_a));
|
||||||
|
BMessenger::Private b(const_cast<BMessenger&>(_b));
|
||||||
|
|
||||||
|
|
||||||
// significance:
|
// significance:
|
||||||
// 1. fPort
|
// 1. fPort
|
||||||
// 2. fHandlerToken
|
// 2. fHandlerToken
|
||||||
// 3. fPreferredTarget
|
// 3. fPreferredTarget
|
||||||
// fTeam is insignificant
|
// fTeam is insignificant
|
||||||
return (a.fPort < b.fPort
|
return (a.Port() < b.Port()
|
||||||
|| a.fPort == b.fPort
|
|| a.Port() == b.Port()
|
||||||
&& (a.fHandlerToken < b.fHandlerToken
|
&& (a.Token() < b.Token()
|
||||||
|| a.fHandlerToken == b.fHandlerToken
|
|| a.Token() == b.Token()
|
||||||
&& !a.fPreferredTarget
|
&& !a.IsPreferredTarget()
|
||||||
&& b.fPreferredTarget));
|
&& b.IsPreferredTarget()));
|
||||||
}
|
}
|
||||||
|
|
||||||
// !=
|
// !=
|
||||||
|
|||||||
Reference in New Issue
Block a user