LLPermissions Class Reference

#include <llpermissions.h>

Inheritance diagram for LLPermissions:

Inheritance graph
[legend]
Collaboration diagram for LLPermissions:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LLPermissions ()
void init (const LLUUID &creator, const LLUUID &owner, const LLUUID &last_owner, const LLUUID &group)
void initMasks (PermissionMask base, PermissionMask owner, PermissionMask everyone, PermissionMask group, PermissionMask next)
const LLUUIDgetCreator () const
const LLUUIDgetOwner () const
const LLUUIDgetGroup () const
const LLUUIDgetLastOwner () const
U32 getMaskBase () const
U32 getMaskOwner () const
U32 getMaskGroup () const
U32 getMaskEveryone () const
U32 getMaskNextOwner () const
bool isOwned () const
bool isGroupOwned () const
BOOL getOwnership (LLUUID &owner_id, BOOL &is_group_owned) const
LLUUID getSafeOwner () const
U32 getCRC32 () const
void fix ()
void set (const LLPermissions &permissions)
void setMaskBase (U32 mask)
void setMaskOwner (U32 mask)
void setMaskEveryone (U32 mask)
void setMaskGroup (U32 mask)
void setMaskNext (U32 mask)
void accumulate (const LLPermissions &perm)
BOOL setOwnerAndGroup (const LLUUID &agent, const LLUUID &owner, const LLUUID &group, bool is_atomic)
BOOL deedToGroup (const LLUUID &agent, const LLUUID &group)
BOOL setBaseBits (const LLUUID &agent, BOOL set, PermissionMask bits)
BOOL setOwnerBits (const LLUUID &agent, BOOL set, PermissionMask bits)
BOOL setGroupBits (const LLUUID &agent, const LLUUID &group, BOOL set, PermissionMask bits)
BOOL setEveryoneBits (const LLUUID &agent, const LLUUID &group, BOOL set, PermissionMask bits)
BOOL setNextOwnerBits (const LLUUID &agent, const LLUUID &group, BOOL set, PermissionMask bits)
BOOL allowOperationBy (PermissionBit op, const LLUUID &agent, const LLUUID &group=LLUUID::null) const
BOOL allowModifyBy (const LLUUID &agent_id) const
BOOL allowCopyBy (const LLUUID &agent_id) const
BOOL allowMoveBy (const LLUUID &agent_id) const
BOOL allowModifyBy (const LLUUID &agent_id, const LLUUID &group) const
BOOL allowCopyBy (const LLUUID &agent_id, const LLUUID &group) const
BOOL allowMoveBy (const LLUUID &agent_id, const LLUUID &group) const
BOOL allowTransferTo (const LLUUID &agent_id) const
void packMessage (LLMessageSystem *msg) const
void unpackMessage (LLMessageSystem *msg, const char *block, S32 block_num=0)
BOOL importFile (FILE *fp)
BOOL exportFile (FILE *fp) const
BOOL importLegacyStream (std::istream &input_stream)
BOOL exportLegacyStream (std::ostream &output_stream) const
LLXMLNodeexportFileXML () const
bool importXML (LLXMLNode *node)
bool operator== (const LLPermissions &rhs) const
bool operator!= (const LLPermissions &rhs) const
virtual const LLMetaClassgetMetaClass () const

Static Public Attributes

static const LLPermissions DEFAULT

Private Member Functions

void fixFairUse ()
void fixOwnership ()

Private Attributes

LLUUID mCreator
LLUUID mOwner
LLUUID mLastOwner
LLUUID mGroup
PermissionMask mMaskBase
PermissionMask mMaskOwner
PermissionMask mMaskEveryone
PermissionMask mMaskGroup
PermissionMask mMaskNextOwner
bool mIsGroupOwned

Friends

class LLMetaClassT< LLPermissions >
std::ostream & operator<< (std::ostream &s, const LLPermissions &perm)

Detailed Description

Definition at line 90 of file llpermissions.h.


Constructor & Destructor Documentation

LLPermissions::LLPermissions (  ) 

Definition at line 48 of file llpermissions.cpp.

References init(), and LLUUID::null.


Member Function Documentation

void LLPermissions::accumulate ( const LLPermissions perm  ) 

Definition at line 199 of file llpermissions.cpp.

References fix(), mCreator, mGroup, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, and LLUUID::null.

Referenced by LLSelectMgr::selectGetPermissions().

BOOL LLPermissions::allowCopyBy ( const LLUUID agent_id,
const LLUUID group 
) const [inline]

Definition at line 327 of file llpermissions.h.

References allowOperationBy(), and PERM_COPY.

BOOL LLPermissions::allowCopyBy ( const LLUUID agent_id  )  const [inline]

Definition at line 343 of file llpermissions.h.

References allowOperationBy(), LLUUID::null, and PERM_COPY.

Referenced by LLTextureCtrl::allowDrop(), LLToolDragAndDrop::dad3dRezFromObjectOnLand(), LLToolDragAndDrop::dad3dRezFromObjectOnObject(), LLToolDragAndDrop::dad3dRezObjectOnLand(), LLToolDragAndDrop::dad3dRezObjectOnObject(), LLToolDragAndDrop::dad3dTextureObject(), LLPanelEditWearable::draw(), LLToolDragAndDrop::dropInventory(), LLToolDragAndDrop::dropObject(), LLToolDragAndDrop::dropScript(), LLFloaterTexturePicker::findItemID(), LLFloaterLandmark::findItemID(), LLItemBridge::getLabelSuffix(), LLItemBridge::getPermissionMask(), LLToolDragAndDrop::giveInventory(), LLFloaterTexturePicker::handleDragAndDrop(), LLFloaterLandmark::handleDragAndDrop(), LLPreview::handleHover(), LLFloaterBuyContents::inventoryChanged(), LLToolDragAndDrop::isInventoryGiveAcceptable(), LLToolDragAndDrop::isInventoryGroupGiveAcceptable(), LLItemBridge::isItemCopyable(), LLViewerObject::moveInventory(), LLFloaterTexturePicker::onSelectionChange(), LLFloaterLandmark::onSelectionChange(), LLFloaterTexturePicker::onTextureSelect(), LLGiveable::operator()(), LLDropCopyableItems::operator()(), LLUncopyableItems::operator()(), LLDroppableItem::operator()(), and LLFloaterTexturePicker::setImageID().

BOOL LLPermissions::allowModifyBy ( const LLUUID agent_id,
const LLUUID group 
) const [inline]

Definition at line 322 of file llpermissions.h.

References allowOperationBy(), and PERM_MODIFY.

BOOL LLPermissions::allowModifyBy ( const LLUUID agent_id  )  const [inline]

Definition at line 338 of file llpermissions.h.

References allowOperationBy(), LLUUID::null, and PERM_MODIFY.

Referenced by LLTextureCtrl::allowDrop(), LLPanelEditWearable::draw(), LLItemBridge::getLabelSuffix(), LLItemBridge::getPermissionMask(), LLFloaterTexturePicker::handleDragAndDrop(), LLFloaterLandmark::handleDragAndDrop(), LLItemBridge::isItemRenameable(), LLPanelEditWearable::onBtnRandomize(), and LLPreviewGesture::refresh().

BOOL LLPermissions::allowMoveBy ( const LLUUID agent_id,
const LLUUID group 
) const [inline]

Definition at line 333 of file llpermissions.h.

References allowOperationBy(), and PERM_MOVE.

BOOL LLPermissions::allowMoveBy ( const LLUUID agent_id  )  const [inline]

Definition at line 348 of file llpermissions.h.

References allowOperationBy(), LLUUID::null, and PERM_MOVE.

BOOL LLPermissions::allowOperationBy ( PermissionBit  op,
const LLUUID agent,
const LLUUID group = LLUUID::null 
) const

Definition at line 449 of file llpermissions.cpp.

References LLUUID::isNull(), mGroup, mIsGroupOwned, mMaskEveryone, mMaskGroup, mMaskOwner, mOwner, LLUUID::notNull(), and TRUE.

Referenced by allowCopyBy(), LLTextureCtrl::allowDrop(), allowModifyBy(), allowMoveBy(), LLAgent::allowOperation(), LLSelectNode::allowOperationOnNode(), allowTransferTo(), LLVOAvatar::canGrabLocalTexture(), LLToolDragAndDrop::dad3dGiveInventoryObject(), LLCallingCardBridge::dragOrDrop(), LLItemBridge::getLabelSuffix(), LLItemBridge::getPermissionMask(), LLFloaterTexturePicker::handleDragAndDrop(), LLFloaterLandmark::handleDragAndDrop(), LLToolDragAndDrop::handleDropTextureProtections(), LLToolDragAndDrop::isInventoryGiveAcceptable(), LLToolDragAndDrop::isInventoryGroupGiveAcceptable(), LLGiveable::operator()(), LLDroppableItem::operator()(), LLSelectMgr::selectionSetImage(), and LLToolDragAndDrop::willObjectAcceptInventory().

BOOL LLPermissions::allowTransferTo ( const LLUUID agent_id  )  const [inline]

Definition at line 353 of file llpermissions.h.

References allowOperationBy(), mGroup, mIsGroupOwned, mOwner, PERM_TRANSFER, and TRUE.

Referenced by LLSelectNode::allowOperationOnNode(), LLToolDragAndDrop::dad3dRezFromObjectOnLand(), LLToolDragAndDrop::dad3dRezFromObjectOnObject(), handle_buy_object(), LLFloaterBuyContents::inventoryChanged(), LLFloaterBuy::inventoryChanged(), IsItemTransferable::operator()(), LLTaskCategoryBridge::startDrag(), and LLTaskInvFVBridge::startDrag().

BOOL LLPermissions::deedToGroup ( const LLUUID agent,
const LLUUID group 
)

Definition at line 278 of file llpermissions.cpp.

References FALSE, fix(), fixFairUse(), LLUUID::isNull(), mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, LLUUID::notNull(), PERM_MOVE, PERM_NONE, PERM_TRANSFER, LLUUID::setNull(), and TRUE.

BOOL LLPermissions::exportFile ( FILE *  fp  )  const

Definition at line 618 of file llpermissions.cpp.

References mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, LLUUID::toString(), and TRUE.

Referenced by LLWearable::exportFile(), LLInventoryItem::exportFile(), and LLViewerInventoryItem::exportFileLocal().

LLXMLNode * LLPermissions::exportFileXML (  )  const

Definition at line 792 of file llpermissions.cpp.

References LLXMLNode::createChild(), LLXMLNode::ENCODING_HEX, FALSE, mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, and TRUE.

Referenced by LLInventoryItem::exportFileXML().

BOOL LLPermissions::exportLegacyStream ( std::ostream &  output_stream  )  const

Definition at line 752 of file llpermissions.cpp.

References mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, LLUUID::toString(), and TRUE.

Referenced by LLInventoryItem::exportLegacyStream().

void LLPermissions::fix (  ) 

Definition at line 147 of file llpermissions.cpp.

References mIsGroupOwned, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, PERM_COPY, PERM_MODIFY, and PERM_TRANSFER.

Referenced by accumulate(), deedToGroup(), importFile(), importLegacyStream(), initMasks(), ll_permissions_from_sd(), setBaseBits(), setEveryoneBits(), setGroupBits(), setNextOwnerBits(), setOwnerAndGroup(), and setOwnerBits().

void LLPermissions::fixFairUse (  )  [private]

Definition at line 170 of file llpermissions.cpp.

References mMaskBase, mMaskNextOwner, PERM_COPY, PERM_MOVE, PERM_NONE, and PERM_TRANSFER.

Referenced by deedToGroup(), importFile(), importLegacyStream(), and initMasks().

void LLPermissions::fixOwnership (  )  [private]

Definition at line 184 of file llpermissions.cpp.

References LLUUID::isNull(), mGroup, mIsGroupOwned, mOwner, and LLUUID::notNull().

Referenced by init(), and setOwnerAndGroup().

U32 LLPermissions::getCRC32 (  )  const

Definition at line 121 of file llpermissions.cpp.

References LLUUID::getCRC32(), mCreator, mGroup, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskOwner, and mOwner.

Referenced by LLInventoryItem::getCRC32().

const LLUUID& LLPermissions::getCreator (  )  const [inline]

Definition at line 137 of file llpermissions.h.

References mCreator.

Referenced by LLInventoryItem::getCreatorUUID(), ll_create_sd_from_permissions(), operator<<(), and LLInventoryItem::packBinaryBucket().

const LLUUID& LLPermissions::getGroup (  )  const [inline]

Definition at line 145 of file llpermissions.h.

References mGroup.

Referenced by LLAgent::allowOperation(), LLSelectNode::allowOperationOnNode(), LLViewerObject::doUpdateInventory(), ll_create_sd_from_permissions(), LLPreviewTexture::LLPreviewTexture(), LLFloaterProperties::onClickOwner(), operator<<(), LLInventoryItem::packBinaryBucket(), LLFloaterProperties::refreshFromItem(), and LLHoverView::updateText().

const LLUUID& LLPermissions::getLastOwner (  )  const [inline]

Definition at line 149 of file llpermissions.h.

References mLastOwner.

Referenced by ll_create_sd_from_permissions(), and LLInventoryItem::packBinaryBucket().

U32 LLPermissions::getMaskBase (  )  const [inline]

Definition at line 151 of file llpermissions.h.

References mMaskBase.

Referenced by LLInventoryItem::asLLSD(), LLInventoryItem::exportFile(), LLInventoryItem::exportFileXML(), LLInventoryItem::exportLegacyStream(), LLPreviewGesture::handleDragAndDrop(), LLItemBridge::isItemPermissive(), ll_create_sd_from_permissions(), LLPreviewTexture::LLPreviewTexture(), operator<<(), LLInventoryItem::packBinaryBucket(), LLFloaterProperties::refreshFromItem(), and LLToolDragAndDrop::willObjectAcceptInventory().

U32 LLPermissions::getMaskEveryone (  )  const [inline]

Definition at line 154 of file llpermissions.h.

References mMaskEveryone.

Referenced by ll_create_sd_from_permissions(), LLPreviewTexture::LLPreviewTexture(), operator<<(), pack_permissions_slam(), LLInventoryItem::packBinaryBucket(), LLFloaterProperties::refreshFromItem(), and LLHoverView::updateText().

U32 LLPermissions::getMaskGroup (  )  const [inline]

Definition at line 153 of file llpermissions.h.

References mMaskGroup.

Referenced by ll_create_sd_from_permissions(), LLPreviewTexture::LLPreviewTexture(), operator<<(), pack_permissions_slam(), LLInventoryItem::packBinaryBucket(), and LLFloaterProperties::refreshFromItem().

U32 LLPermissions::getMaskNextOwner (  )  const [inline]

Definition at line 155 of file llpermissions.h.

References mMaskNextOwner.

Referenced by LLAgent::addWearableToAgentInventory(), LLTaskInvFVBridge::buyItem(), LLFolderBridge::createWearable(), LLViewerTextEditor::handleDragAndDrop(), LLFloaterBuyContents::inventoryChanged(), LLFloaterBuy::inventoryChanged(), ll_create_sd_from_permissions(), LLPanelEditWearable::onSelectAutoWearOption(), operator<<(), pack_permissions_slam(), LLInventoryItem::packBinaryBucket(), LLFloaterProperties::refreshFromItem(), and LLFloaterBuy::show().

U32 LLPermissions::getMaskOwner (  )  const [inline]

Definition at line 152 of file llpermissions.h.

References mMaskOwner.

Referenced by enable_buy(), LLInventoryItem::fromLLSD(), LLAgent::getWearablePermMask(), LLInventoryItem::importFile(), LLInventoryItem::importLegacyStream(), ll_create_sd_from_permissions(), operator<<(), LLInventoryItem::packBinaryBucket(), LLFloaterProperties::refreshFromItem(), LLPanelEditWearable::setSubpart(), LLFloaterCustomize::updateInventoryUI(), LLFloaterCustomize::updateScrollingPanelUI(), LLHoverView::updateText(), and LLWearable::writeToAvatar().

const LLMetaClass & LLPermissions::getMetaClass (  )  const [virtual]

Implements LLReflective.

Definition at line 902 of file llpermissions.cpp.

References LLMetaClassT< TObject >::instance().

const LLUUID& LLPermissions::getOwner (  )  const [inline]

Definition at line 141 of file llpermissions.h.

References mOwner.

Referenced by LLTaskSoundBridge::buildContextMenu(), confirm_replace_attachment_rez(), LLToolDragAndDrop::dad3dActivateGesture(), LLToolDragAndDrop::dad3dRezAttachmentFromInv(), LLToolDragAndDrop::dad3dWearItem(), LLOutfitObserver::done(), LLViewerObject::doUpdateInventory(), LLFolderBridge::dragItemIntoFolder(), enable_save_into_inventory(), LLViewerInventoryItem::fetchFromServer(), LLItemBridge::getLabelSuffix(), LLAttachObject::handleEvent(), LLPreview::handleHover(), LLAgent::isGrantedProxy(), ll_create_sd_from_permissions(), LLPreviewTexture::LLPreviewTexture(), LLLiveLSLEditor::loadAsset(), LLPreviewLSL::loadAsset(), LLPreviewNotecard::loadAsset(), LLPanelEstateCovenant::loadInvItem(), LLAgent::makeNewOutfit(), LLPreview::onBtnCopyToInv(), LLFloaterProperties::onClickOwner(), LLFloaterInspect::onClickOwnerProfile(), LLPreview::onCommit(), LLWearableBridge::openItem(), operator<<(), LLInventoryItem::packBinaryBucket(), LLObjectBridge::performAction(), LLFloaterProperties::refreshFromItem(), LLAgent::saveWearableAs(), send_group_notice(), LLViewerInventoryItem::updateServer(), LLHoverView::updateText(), wear_inventory_category_on_avatar_step2(), LLWearableBridge::wearOnAvatar(), and LLToolDragAndDrop::willObjectAcceptInventory().

BOOL LLPermissions::getOwnership ( LLUUID owner_id,
BOOL is_group_owned 
) const

Definition at line 84 of file llpermissions.cpp.

References FALSE, mGroup, mIsGroupOwned, mOwner, LLUUID::notNull(), and TRUE.

Referenced by LLAgent::allowOperation(), LLSelectNode::allowOperationOnNode(), LLFloaterBuyContents::inventoryChanged(), and LLFloaterPay::payViaObject().

LLUUID LLPermissions::getSafeOwner (  )  const

Definition at line 101 of file llpermissions.cpp.

References LLUUID::generate(), llendl, llwarns, mGroup, mIsGroupOwned, mOwner, and LLUUID::notNull().

BOOL LLPermissions::importFile ( FILE *  fp  ) 

Definition at line 514 of file llpermissions.cpp.

References BUFSIZE, fix(), fixFairUse(), init(), llendl, llinfos, mask, mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, NULL, LLUUID::null, S32, LLUUID::set(), and TRUE.

Referenced by LLWearable::importFile(), and LLInventoryItem::importFile().

BOOL LLPermissions::importLegacyStream ( std::istream &  input_stream  ) 

Definition at line 652 of file llpermissions.cpp.

References BUFSIZE, fix(), fixFairUse(), init(), llendl, llinfos, mask, mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, LLUUID::null, S32, LLUUID::set(), and TRUE.

Referenced by LLInventoryItem::importLegacyStream().

bool LLPermissions::importXML ( LLXMLNode node  ) 

Definition at line 812 of file llpermissions.cpp.

References LLXMLNode::getChild(), LLXMLNode::getName(), lldebugs, llendl, mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, and mOwner.

Referenced by LLInventoryItem::importXML().

void LLPermissions::init ( const LLUUID creator,
const LLUUID owner,
const LLUUID last_owner,
const LLUUID group 
)

Definition at line 55 of file llpermissions.cpp.

References fixOwnership(), mCreator, mGroup, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, mOwner, and PERM_ALL.

Referenced by create_random_inventory_item(), LLWearableList::createLegacyWearableFromAvatar(), LLWearableList::createNewWearable(), handle_grab_texture(), importFile(), importLegacyStream(), ll_permissions_from_sd(), LLPermissions(), LLLiveLSLEditor::loadAsset(), LLInventoryModel::loadMeat(), LLPanelContents::onClickNewScript(), LLSelectMgr::processObjectProperties(), LLSelectMgr::processObjectPropertiesFamily(), LLInventoryItem::unpackBinaryBucket(), and LLNewAgentInventoryResponder::uploadComplete().

void LLPermissions::initMasks ( PermissionMask  base,
PermissionMask  owner,
PermissionMask  everyone,
PermissionMask  group,
PermissionMask  next 
)

Definition at line 71 of file llpermissions.cpp.

References fix(), fixFairUse(), mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, and mMaskOwner.

Referenced by create_random_inventory_item(), LLWearableList::createLegacyWearableFromAvatar(), LLWearableList::createNewWearable(), handle_grab_texture(), LLLiveLSLEditor::loadAsset(), LLInventoryModel::loadMeat(), LLPanelContents::onClickNewScript(), LLSelectMgr::processObjectProperties(), LLSelectMgr::processObjectPropertiesFamily(), LLInventoryItem::unpackBinaryBucket(), and LLNewAgentInventoryResponder::uploadComplete().

bool LLPermissions::isGroupOwned (  )  const [inline]

Definition at line 161 of file llpermissions.h.

References mIsGroupOwned.

Referenced by LLViewerObject::doUpdateInventory(), ll_create_sd_from_permissions(), LLFloaterProperties::onClickOwner(), LLFloaterProperties::refreshFromItem(), LLFloaterBuyContents::show(), and LLHoverView::updateText().

bool LLPermissions::isOwned (  )  const [inline]

Definition at line 158 of file llpermissions.h.

References mIsGroupOwned, mOwner, and LLUUID::notNull().

Referenced by LLAgent::allowOperation(), LLSelectNode::allowOperationOnNode(), and LLFloaterProperties::refreshFromItem().

bool LLPermissions::operator!= ( const LLPermissions rhs  )  const

Definition at line 865 of file llpermissions.cpp.

References mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, and mOwner.

bool LLPermissions::operator== ( const LLPermissions rhs  )  const

Definition at line 849 of file llpermissions.cpp.

References mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, and mOwner.

void LLPermissions::packMessage ( LLMessageSystem msg  )  const

Definition at line 478 of file llpermissions.cpp.

References _PREHASH_BaseMask, _PREHASH_CreatorID, _PREHASH_EveryoneMask, _PREHASH_GroupID, _PREHASH_GroupMask, _PREHASH_GroupOwned, _PREHASH_NextOwnerMask, _PREHASH_OwnerID, _PREHASH_OwnerMask, LLMessageSystem::addBOOLFast(), LLMessageSystem::addU32Fast(), LLMessageSystem::addUUIDFast(), mCreator, mGroup, mIsGroupOwned, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, and mOwner.

Referenced by LLViewerInventoryItem::packMessage(), and LLInventoryItem::packMessage().

void LLPermissions::set ( const LLPermissions permissions  ) 

Definition at line 131 of file llpermissions.cpp.

References mCreator, mGroup, mIsGroupOwned, mLastOwner, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, and mOwner.

BOOL LLPermissions::setBaseBits ( const LLUUID agent,
BOOL  set,
PermissionMask  bits 
)

Definition at line 300 of file llpermissions.cpp.

References FALSE, fix(), LLUUID::isNull(), mMaskBase, and TRUE.

BOOL LLPermissions::setEveryoneBits ( const LLUUID agent,
const LLUUID group,
BOOL  set,
PermissionMask  bits 
)

Definition at line 389 of file llpermissions.cpp.

References FALSE, fix(), LLUUID::isNull(), mGroup, mMaskEveryone, mOwner, and TRUE.

Referenced by SetNotForSale::operator()().

BOOL LLPermissions::setGroupBits ( const LLUUID agent,
const LLUUID group,
BOOL  set,
PermissionMask  bits 
)

Definition at line 360 of file llpermissions.cpp.

References FALSE, fix(), LLUUID::isNull(), mGroup, mMaskGroup, mOwner, and TRUE.

Referenced by SetNotForSale::operator()().

void LLPermissions::setMaskBase ( U32  mask  )  [inline]

Definition at line 196 of file llpermissions.h.

References mMaskBase.

Referenced by ll_permissions_from_sd().

void LLPermissions::setMaskEveryone ( U32  mask  )  [inline]

Definition at line 198 of file llpermissions.h.

References mMaskEveryone.

Referenced by ll_permissions_from_sd().

void LLPermissions::setMaskGroup ( U32  mask  )  [inline]

Definition at line 199 of file llpermissions.h.

References mMaskGroup.

Referenced by ll_permissions_from_sd(), and SetItemOwnerAndGroup::operator()().

void LLPermissions::setMaskNext ( U32  mask  )  [inline]

Definition at line 200 of file llpermissions.h.

References mMaskNextOwner.

Referenced by LLInventoryItem::fromLLSD(), LLWearable::importFile(), LLInventoryItem::importFile(), LLInventoryItem::importLegacyStream(), and ll_permissions_from_sd().

void LLPermissions::setMaskOwner ( U32  mask  )  [inline]

Definition at line 197 of file llpermissions.h.

References mMaskOwner.

Referenced by ll_permissions_from_sd().

BOOL LLPermissions::setNextOwnerBits ( const LLUUID agent,
const LLUUID group,
BOOL  set,
PermissionMask  bits 
)

Definition at line 418 of file llpermissions.cpp.

References FALSE, fix(), LLUUID::isNull(), mGroup, mMaskNextOwner, mOwner, PERM_COPY, PERM_TRANSFER, and TRUE.

BOOL LLPermissions::setOwnerAndGroup ( const LLUUID agent,
const LLUUID owner,
const LLUUID group,
bool  is_atomic 
)

Definition at line 229 of file llpermissions.cpp.

References FALSE, fix(), fixOwnership(), LLUUID::isNull(), mGroup, mLastOwner, mMaskBase, mMaskNextOwner, mMaskOwner, mOwner, PERM_COPY, PERM_MOVE, PERM_NONE, PERM_TRANSFER, and TRUE.

Referenced by LLViewerObject::doUpdateInventory(), and SetItemOwnerAndGroup::operator()().

BOOL LLPermissions::setOwnerBits ( const LLUUID agent,
BOOL  set,
PermissionMask  bits 
)

Definition at line 328 of file llpermissions.cpp.

References FALSE, fix(), LLUUID::isNull(), mMaskOwner, mOwner, and TRUE.

void LLPermissions::unpackMessage ( LLMessageSystem msg,
const char *  block,
S32  block_num = 0 
)

Definition at line 493 of file llpermissions.cpp.

References _PREHASH_BaseMask, _PREHASH_CreatorID, _PREHASH_EveryoneMask, _PREHASH_GroupID, _PREHASH_GroupMask, _PREHASH_GroupOwned, _PREHASH_NextOwnerMask, _PREHASH_OwnerID, _PREHASH_OwnerMask, LLMessageSystem::getBOOLFast(), LLMessageSystem::getU32Fast(), LLMessageSystem::getUUIDFast(), mCreator, mGroup, mIsGroupOwned, mMaskBase, mMaskEveryone, mMaskGroup, mMaskNextOwner, mMaskOwner, and mOwner.

Referenced by LLInventoryItem::unpackMessage().


Friends And Related Function Documentation

friend class LLMetaClassT< LLPermissions > [friend]

Definition at line 317 of file llpermissions.h.

std::ostream& operator<< ( std::ostream &  s,
const LLPermissions perm 
) [friend]

Definition at line 880 of file llpermissions.cpp.


Member Data Documentation

const LLPermissions LLPermissions::DEFAULT [static]

---------------------------------------------------------------------------- Class LLPermissions ----------------------------------------------------------------------------

Definition at line 120 of file llpermissions.h.

LLUUID LLPermissions::mCreator [private]

Definition at line 93 of file llpermissions.h.

Referenced by accumulate(), exportFile(), exportFileXML(), exportLegacyStream(), getCRC32(), getCreator(), importFile(), importLegacyStream(), importXML(), init(), operator!=(), operator==(), packMessage(), LLMetaClassT< TObject >::reflectProperties(), set(), and unpackMessage().

LLUUID LLPermissions::mGroup [private]

Definition at line 96 of file llpermissions.h.

Referenced by accumulate(), allowOperationBy(), allowTransferTo(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), fixOwnership(), getCRC32(), getGroup(), getOwnership(), getSafeOwner(), importFile(), importLegacyStream(), importXML(), init(), operator!=(), operator==(), packMessage(), set(), setEveryoneBits(), setGroupBits(), setNextOwnerBits(), setOwnerAndGroup(), and unpackMessage().

bool LLPermissions::mIsGroupOwned [private]

Definition at line 109 of file llpermissions.h.

Referenced by allowOperationBy(), allowTransferTo(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), fix(), fixOwnership(), getOwnership(), getSafeOwner(), importFile(), importLegacyStream(), importXML(), isGroupOwned(), isOwned(), operator!=(), operator==(), packMessage(), set(), and unpackMessage().

LLUUID LLPermissions::mLastOwner [private]

Definition at line 95 of file llpermissions.h.

Referenced by accumulate(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), getCRC32(), getLastOwner(), importFile(), importLegacyStream(), importXML(), init(), operator!=(), operator==(), set(), and setOwnerAndGroup().

PermissionMask LLPermissions::mMaskBase [private]

Definition at line 98 of file llpermissions.h.

Referenced by accumulate(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), fix(), fixFairUse(), getCRC32(), getMaskBase(), importFile(), importLegacyStream(), importXML(), init(), initMasks(), operator!=(), operator==(), packMessage(), set(), setBaseBits(), setMaskBase(), setOwnerAndGroup(), and unpackMessage().

PermissionMask LLPermissions::mMaskEveryone [private]

Definition at line 101 of file llpermissions.h.

Referenced by accumulate(), allowOperationBy(), exportFile(), exportFileXML(), exportLegacyStream(), fix(), getCRC32(), getMaskEveryone(), importFile(), importLegacyStream(), importXML(), init(), initMasks(), operator!=(), operator==(), packMessage(), set(), setEveryoneBits(), setMaskEveryone(), and unpackMessage().

PermissionMask LLPermissions::mMaskGroup [private]

Definition at line 103 of file llpermissions.h.

Referenced by accumulate(), allowOperationBy(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), fix(), getCRC32(), getMaskGroup(), importFile(), importLegacyStream(), importXML(), init(), initMasks(), operator!=(), operator==(), packMessage(), set(), setGroupBits(), setMaskGroup(), and unpackMessage().

PermissionMask LLPermissions::mMaskNextOwner [private]

Definition at line 105 of file llpermissions.h.

Referenced by accumulate(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), fix(), fixFairUse(), getMaskNextOwner(), importFile(), importLegacyStream(), importXML(), init(), initMasks(), operator!=(), operator==(), packMessage(), set(), setMaskNext(), setNextOwnerBits(), setOwnerAndGroup(), and unpackMessage().

PermissionMask LLPermissions::mMaskOwner [private]

Definition at line 100 of file llpermissions.h.

Referenced by accumulate(), allowOperationBy(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), fix(), getCRC32(), getMaskOwner(), importFile(), importLegacyStream(), importXML(), init(), initMasks(), operator!=(), operator==(), packMessage(), set(), setMaskOwner(), setOwnerAndGroup(), setOwnerBits(), and unpackMessage().

LLUUID LLPermissions::mOwner [private]

Definition at line 94 of file llpermissions.h.

Referenced by accumulate(), allowOperationBy(), allowTransferTo(), deedToGroup(), exportFile(), exportFileXML(), exportLegacyStream(), fixOwnership(), getCRC32(), getOwner(), getOwnership(), getSafeOwner(), importFile(), importLegacyStream(), importXML(), init(), isOwned(), operator!=(), operator==(), packMessage(), LLMetaClassT< TObject >::reflectProperties(), set(), setEveryoneBits(), setGroupBits(), setNextOwnerBits(), setOwnerAndGroup(), setOwnerBits(), and unpackMessage().


The documentation for this class was generated from the following files:
Generated on Thu Jul 1 06:11:39 2010 for Second Life Viewer by  doxygen 1.4.7