void stop() {
     grabber_->stop();
     cloud_connection_.disconnect();
     if(provides_images_)
         image_connection_.disconnect();
     Logger::log(Logger::INFO, "Producer done.\n");
 }
예제 #2
0
	virtual void TearDown()
	{
		netchng.disconnect();
		transport.stop_listening();
		ASSERT_NO_THROW(beep::shutdown_session(listener));
		TimedSessionBase::TearDown();
	}
예제 #3
0
void LLInspectAvatar::onAvatarNameCache(
    const LLUUID& agent_id,
    const LLAvatarName& av_name)
{
    mAvatarNameCacheConnection.disconnect();

    if (agent_id == mAvatarID)
    {
        getChild<LLUICtrl>("user_name")->setValue(av_name.getDisplayName());
        getChild<LLUICtrl>("user_name_small")->setValue(av_name.getDisplayName());
        getChild<LLUICtrl>("user_slid")->setValue(av_name.getUserName());
        mAvatarName = av_name;

        // show smaller display name if too long to display in regular size
        if (getChild<LLTextBox>("user_name")->getTextPixelWidth() > getChild<LLTextBox>("user_name")->getRect().getWidth())
        {
            getChild<LLUICtrl>("user_name_small")->setVisible( true );
            getChild<LLUICtrl>("user_name")->setVisible( false );
        }
        else
        {
            getChild<LLUICtrl>("user_name_small")->setVisible( false );
            getChild<LLUICtrl>("user_name")->setVisible( true );

        }

    }
}
예제 #4
0
void LLInspectAvatar::requestUpdate()
{
    // Don't make network requests when spawning from the debug menu at the
    // login screen (which is useful to work on the layout).
    if (mAvatarID.isNull())
    {
        if (LLStartUp::getStartupState() >= STATE_STARTED)
        {
            // once we're running we don't want to show the test floater
            // for bogus LLUUID::null links
            closeFloater();
        }
        return;
    }

    // Clear out old data so it doesn't flash between old and new
    getChild<LLUICtrl>("user_name")->setValue("");
    getChild<LLUICtrl>("user_name_small")->setValue("");
    getChild<LLUICtrl>("user_slid")->setValue("");
    getChild<LLUICtrl>("user_subtitle")->setValue("");
    getChild<LLUICtrl>("user_details")->setValue("");

    // Make a new request for properties
    delete mPropertiesRequest;
    mPropertiesRequest = new LLFetchAvatarData(mAvatarID, this);

    // Use an avatar_icon even though the image id will come down with the
    // avatar properties because the avatar_icon code maintains a cache of icons
    // and this may result in the image being visible sooner.
    // *NOTE: This may generate a duplicate avatar properties request, but that
    // will be suppressed internally in the avatar properties processor.

    //remove avatar id from cache to get fresh info
    LLAvatarIconIDCache::getInstance()->remove(mAvatarID);

    getChild<LLUICtrl>("avatar_icon")->setValue(LLSD(mAvatarID) );

    if (mAvatarNameCacheConnection.connected())
    {
        mAvatarNameCacheConnection.disconnect();
    }
    mAvatarNameCacheConnection = LLAvatarNameCache::get(mAvatarID,boost::bind(&LLInspectAvatar::onAvatarNameCache,this, _1, _2));
}
예제 #5
0
void
Controller::Moderator::onTilePlaced
(
	boost::signals2::connection const & inConnection,
	TilePlacement const & inTilePlacement
)
{
	inConnection.disconnect();
	if ( isValidPlacement( *mNextTile, inTilePlacement ) )
	{
		Model::TileOnBoard const tileToPlace( *mNextTile, inTilePlacement.rotation );
		mBoard.placeValidTile( tileToPlace, inTilePlacement.location );

		requestPiecePlacement( inTilePlacement.location );
	}
	else
	{
		// TODO: give player a warning.
		requestTilePlacement();
	}
}
예제 #6
0
void
Controller::Moderator::onPiecePlaced
(
	boost::signals2::connection const & inConnection,
	Utils::Location const & inLocation,
	boost::optional< Model::PlacedPiece > const & inPiecePlacement
)
{
	inConnection.disconnect();
	if ( inPiecePlacement )
	{
		if ( mCurrentPlayer->hasPiece( inPiecePlacement->getType() ) && isValidPlacement( inLocation, *inPiecePlacement ) )
		{
			mCurrentPlayer->takePiece( inPiecePlacement->getType() );
			mBoard.placeValidPiece( *inPiecePlacement, inLocation );
		}
		else
		{
			// TODO: give player a warning.
			// TODO: should player get a second chance?
		}
	}
	endTurn( inLocation );
}
예제 #7
0
void PollManager::removePollThreadListener(boost::signals2::connection c)
{
  boost::recursive_mutex::scoped_lock lock(signal_mutex_);
  c.disconnect();
}
예제 #8
0
  void disconnecting_slot<void>(const boost::signals2::connection &conn, int)
{
  conn.disconnect();
  return;
}
예제 #9
0
  ResultType disconnecting_slot(const boost::signals2::connection &conn, int)
{
  conn.disconnect();
  return ResultType();
}
 virtual ~PrivilegeObjectNode()
 {
   _changed_conn.disconnect();
 }