llstl.h File Reference

helper object & functions for use with the stl. More...

#include <functional>
#include <set>
#include <deque>

Include dependency graph for llstl.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  compare_pair_first< T1, T2 >
struct  compare_pair_greater< T1, T2 >
struct  compare_pointer_contents< T >
struct  DeletePointer
struct  DeletePointerArray
struct  DeletePairedPointer
struct  DeletePairedPointerArray
struct  DeletePointerFunctor< T >
struct  DeleteArrayFunctor< T >
struct  CopyNewPointer
struct  _LLSelect1st< _Pair >
struct  _LLSelect2nd< _Pair >
struct  llselect1st< _Pair >
struct  llselect2nd< _Pair >
class  ll_unary_compose< _Operation1, _Operation2 >
class  ll_binary_compose< _Operation1, _Operation2, _Operation3 >
class  llbinder1st< _Operation >
class  llbinder2nd< _Operation >

Functions

template<typename K, typename T>
T * get_ptr_in_map (const std::map< K, T * > &inmap, const K &key)
template<typename K, typename T>
bool is_in_map (const std::map< K, T > &inmap, const K &key)
template<typename K, typename T>
get_if_there (const std::map< K, T > &inmap, const K &key, T default_value)
template<typename T, typename Iter>
Iter vector_replace_with_last (std::vector< T > &invec, Iter iter)
template<typename T>
bool vector_replace_with_last (std::vector< T > &invec, const T &val)
template<typename T>
T * vector_append (std::vector< T > &invec, S32 N)
template<class InputIter, class Size, class Function>
Function ll_for_n (InputIter first, Size n, Function f)
template<class InputIter, class Size, class OutputIter>
OutputIter ll_copy_n (InputIter first, Size n, OutputIter result)
template<class InputIter, class OutputIter, class Size, class UnaryOp>
OutputIter ll_transform_n (InputIter first, Size n, OutputIter result, UnaryOp op)
template<class _Operation1, class _Operation2>
ll_unary_compose< _Operation1,
_Operation2 > 
llcompose1 (const _Operation1 &__op1, const _Operation2 &__op2)
template<class _Operation1, class _Operation2, class _Operation3>
ll_binary_compose< _Operation1,
_Operation2, _Operation3 > 
llcompose2 (const _Operation1 &__op1, const _Operation2 &__op2, const _Operation3 &__op3)
template<class _Operation, class _Tp>
llbinder1st< _Operation > llbind1st (const _Operation &__oper, const _Tp &__x)
template<class _Operation, class _Tp>
llbinder2nd< _Operation > llbind2nd (const _Operation &__oper, const _Tp &__x)


Detailed Description

helper object & functions for use with the stl.

LicenseInfo
firstyear=2003&license=viewergpl

Copyright (c) 2003-2007, Linden Research, Inc.

Second Life Viewer Source Code The source code in this file ("Source Code") is provided by Linden Lab to you under the terms of the GNU General Public License, version 2.0 ("GPL"), unless you have obtained a separate licensing agreement ("Other License"), formally executed by you and Linden Lab. Terms of the GPL can be found in doc/GPL-license.txt in this distribution, or online at http://secondlife.com/developers/opensource/gplv2

There are special exceptions to the terms and conditions of the GPL as it is applied to this Source Code. View the full text of the exception in the file doc/FLOSS-exception.txt in this software distribution, or online at http://secondlife.com/developers/opensource/flossexception

By copying, modifying or distributing this software, you acknowledge that you have read and understood your obligations described above, and agree to abide by those obligations.

ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE. $/LicenseInfo$

Definition in file llstl.h.


Function Documentation

template<typename K, typename T>
T get_if_there ( const std::map< K, T > &  inmap,
const K &  key,
default_value 
) [inline]

Definition at line 212 of file llstl.h.

Referenced by LLFloaterGroupInfo::callbackLoadGroupName(), LLFloaterGroupInfo::closeGroup(), LLMessageSystem::findCircuitCode(), LLPipeline::findPool(), LLViewerObjectList::getUUIDFromLocal(), LLFont::getXAdvance(), LLFont::getXKerning(), LLKeyboard::keyFromString(), LLPanelGroupVoting::impl::processGroupActiveProposalItemReply(), LLMessageSystem::processUseCircuitCode(), LLFloaterGroupInfo::refreshGroup(), LLPanelEditWearable::setSubpart(), LLFloaterGroupInvite::showForGroup(), LLFloaterGroupInfo::showFromUUID(), LLFloaterGroupInfo::showNotice(), LLKeyboard::stringFromKey(), and LLPanelGroupLandMoney::update().

template<typename K, typename T>
T* get_ptr_in_map ( const std::map< K, T * > &  inmap,
const K &  key 
) [inline]

Definition at line 177 of file llstl.h.

References NULL.

Referenced by LLMessageSystem::addHandlerFuncFast(), LLInventoryModel::buildParentChildMap(), LLInventoryModel::collectDescendentsIf(), LLTemplateMessageReader::decodeTemplate(), LLInventoryModel::deleteObject(), LLMessageSystem::delHandlerFuncFast(), LLMessageSystem::dumpReceiveCounts(), LLInventoryModel::findCatUUID(), LLHTTPNode::Impl::findNamedChild(), LLAvatarTracker::formFriendship(), LLCacheName::get(), LLLandmarkList::getAsset(), LLAvatarTracker::getBuddyInfo(), LLHTTPNode::getChild(), LLInventoryModel::getDirectDescendentsOf(), LLCacheName::getGroupName(), LLCacheName::getName(), LLAvatarTracker::isBuddyEmpowered(), LLAvatarTracker::isBuddyOnline(), LLInventoryModel::moveObject(), LLCacheName::Impl::processPendingReplies(), LLAvatarTracker::processTerminateFriendship(), LLCacheName::Impl::processUUIDReply(), LLCacheName::Impl::processUUIDRequest(), LLAvatarTracker::setBuddyEmpowered(), LLAvatarTracker::setBuddyOnline(), LLMessageSystem::setHandlerFuncFast(), LLAvatarTracker::terminateBuddy(), LLInventoryModel::updateCategory(), and LLInventoryModel::updateItem().

template<typename K, typename T>
bool is_in_map ( const std::map< K, T > &  inmap,
const K &  key 
) [inline]

Definition at line 194 of file llstl.h.

Referenced by LLInventoryModel::moveObject().

template<class InputIter, class Size, class OutputIter>
OutputIter ll_copy_n ( InputIter  first,
Size  n,
OutputIter  result 
)

Definition at line 294 of file llstl.h.

template<class InputIter, class Size, class Function>
Function ll_for_n ( InputIter  first,
Size  n,
Function  f 
)

Definition at line 285 of file llstl.h.

References f.

template<class InputIter, class OutputIter, class Size, class UnaryOp>
OutputIter ll_transform_n ( InputIter  first,
Size  n,
OutputIter  result,
UnaryOp  op 
)

Definition at line 303 of file llstl.h.

template<class _Operation, class _Tp>
llbinder1st<_Operation> llbind1st ( const _Operation &  __oper,
const _Tp &  __x 
) [inline]

Definition at line 439 of file llstl.h.

template<class _Operation, class _Tp>
llbinder2nd<_Operation> llbind2nd ( const _Operation &  __oper,
const _Tp &  __x 
) [inline]

Definition at line 464 of file llstl.h.

Referenced by LLFloaterRegionInfo::refreshFromRegion().

template<class _Operation1, class _Operation2>
ll_unary_compose<_Operation1,_Operation2> llcompose1 ( const _Operation1 &  __op1,
const _Operation2 &  __op2 
) [inline]

Definition at line 386 of file llstl.h.

Referenced by LLCircuit::~LLCircuit(), and LLSDRPCServer::~LLSDRPCServer().

template<class _Operation1, class _Operation2, class _Operation3>
ll_binary_compose<_Operation1, _Operation2, _Operation3> llcompose2 ( const _Operation1 &  __op1,
const _Operation2 &  __op2,
const _Operation3 &  __op3 
) [inline]

Definition at line 411 of file llstl.h.

template<typename T>
T* vector_append ( std::vector< T > &  invec,
S32  N 
) [inline]

Definition at line 276 of file llstl.h.

Referenced by LLProfile::addCap(), LLProfile::addFace(), LLVolumeFace::createCap(), LLVolumeFace::createSide(), LLVolume::generateSilhouetteVertices(), and LLPath::genNGon().

template<typename T>
bool vector_replace_with_last ( std::vector< T > &  invec,
const T &  val 
) [inline]

Definition at line 261 of file llstl.h.

template<typename T, typename Iter>
Iter vector_replace_with_last ( std::vector< T > &  invec,
Iter  iter 
) [inline]

Definition at line 237 of file llstl.h.

Referenced by LLFacePool::removeFace().


Generated on Thu Jul 1 06:10:41 2010 for Second Life Viewer by  doxygen 1.4.7