roles_constants.h

Go to the documentation of this file.
00001 
00032 #ifndef LL_ROLES_CONSTANTS_H
00033 #define LL_ROLES_CONSTANTS_H
00034 
00035 // This value includes the everyone group.
00036 const S32 MAX_ROLES = 10;
00037 
00038 enum LLRoleMemberChangeType
00039 {
00040         RMC_ADD,
00041         RMC_REMOVE,
00042         RMC_NONE
00043 };
00044 
00045 enum LLRoleChangeType
00046 {
00047         RC_UPDATE_NONE,
00048         RC_UPDATE_DATA,
00049         RC_UPDATE_POWERS,
00050         RC_UPDATE_ALL,
00051         RC_CREATE,
00052         RC_DELETE
00053 };
00054 
00055 //
00056 // Powers
00057 //
00058 
00059 // KNOWN HOLES:
00060 // bit 0x1 << 37 (GP_OBJECT_RETURN)
00061 
00062 // These powers were removed to make group roles simpler
00063 // bit 0x1 << 27 (GP_LAND_ALLOW_SCRIPTS) 
00064 // bit 0x1 << 16 (GP_LAND_VIEW_OWNED)
00065 // bit 0x1 << 41 (GP_ACCOUNTING_VIEW)
00066 // bit 0x1 << 46 (GP_PROPOSAL_VIEW)
00067 
00068 const U64 GP_NO_POWERS = 0x0;
00069 const U64 GP_ALL_POWERS = 0xFFFFFFFFFFFFFFFFLL;
00070 
00071 // Membership
00072 const U64 GP_MEMBER_INVITE              = 0x1 << 1;             // Invite member
00073 const U64 GP_MEMBER_EJECT                       = 0x1 << 2;             // Eject member from group
00074 const U64 GP_MEMBER_OPTIONS             = 0x1 << 3;             // Toggle "Open enrollment" and change "Signup Fee"
00075 const U64 GP_MEMBER_VISIBLE_IN_DIR = 0x1LL << 47;
00076 
00077 // Roles
00078 const U64 GP_ROLE_CREATE                        = 0x1 << 4;             // Create new roles
00079 const U64 GP_ROLE_DELETE                        = 0x1 << 5;             // Delete roles
00080 const U64 GP_ROLE_PROPERTIES            = 0x1 << 6;             // Change Role Names, Titles, and Descriptions (Of roles the user is in, only, or any role in group?)
00081 const U64 GP_ROLE_ASSIGN_MEMBER_LIMITED = 0x1 << 7; // Assign Member to a Role that the assigner is in
00082 const U64 GP_ROLE_ASSIGN_MEMBER = 0x1 << 8;             // Assign Member to Role
00083 const U64 GP_ROLE_REMOVE_MEMBER = 0x1 << 9;             // Remove Member from Role
00084 const U64 GP_ROLE_CHANGE_ACTIONS        = 0x1 << 10;    // Change actions a role can perform
00085 
00086 // Group Identity
00087 const U64 GP_GROUP_CHANGE_IDENTITY = 0x1 << 11; // Charter, insignia, 'Show In Group List', 'Publish on the web', 'Mature', all 'Show Member In Group Profile' checkboxes
00088 
00089 // Parcel Management
00090 const U64 GP_LAND_DEED                  = 0x1 << 12;    // Deed Land and Buy Land for Group
00091 const U64 GP_LAND_RELEASE                       = 0x1 << 13;    // Release Land (to Gov. Linden)
00092 const U64 GP_LAND_SET_SALE_INFO = 0x1 << 14;    // Set for sale info (Toggle "For Sale", Set Price, Set Target, Toggle "Sell objects with the land")
00093 const U64 GP_LAND_DIVIDE_JOIN           = 0x1 << 15;    // Divide and Join Parcels
00094 
00095 // Parcel Identity
00096 const U64 GP_LAND_FIND_PLACES           = 0x1 << 17;    // Toggle "Show in Find Places" and Set Category.
00097 const U64 GP_LAND_CHANGE_IDENTITY = 0x1 << 18;  // Change Parcel Identity: Parcel Name, Parcel Description, Snapshot, 'Publish on the web', and 'Mature' checkbox
00098 const U64 GP_LAND_SET_LANDING_POINT = 0x1 << 19;        // Set Landing Point
00099 
00100 // Parcel Settings
00101 const U64 GP_LAND_CHANGE_MEDIA  = 0x1 << 20;    // Change Media Settings
00102 const U64 GP_LAND_EDIT                  = 0x1 << 21;    // Toggle Edit Land
00103 const U64 GP_LAND_OPTIONS                       = 0x1 << 22;    // Toggle Set Home Point, Fly, Outside Scripts, Create/Edit Objects, Landmark, and Damage checkboxes
00104 
00105 // Parcel Powers
00106 const U64 GP_LAND_ALLOW_EDIT_LAND = 0x1 << 23;  // Bypass Edit Land Restriction
00107 const U64 GP_LAND_ALLOW_FLY             = 0x1 << 24;    // Bypass Fly Restriction
00108 const U64 GP_LAND_ALLOW_CREATE  = 0x1 << 25;    // Bypass Create/Edit Objects Restriction
00109 const U64 GP_LAND_ALLOW_LANDMARK        = 0x1 << 26;    // Bypass Landmark Restriction
00110 const U64 GP_LAND_ALLOW_SET_HOME        = 0x1 << 28;    // Bypass Set Home Point Restriction
00111 
00112 // Parcel Access
00113 const U64 GP_LAND_MANAGE_ALLOWED        = 0x1 << 29;    // Manage Allowed List
00114 const U64 GP_LAND_MANAGE_BANNED = 0x1 << 30;    // Manage Banned List
00115 const U64 GP_LAND_MANAGE_PASSES = 0x1LL << 31;  // Change Sell Pass Settings
00116 const U64 GP_LAND_ADMIN                 = 0x1LL << 32;  // Eject and Freeze Users on the land
00117 
00118 // Parcel Content
00119 const U64 GP_LAND_RETURN_GROUP_OWNED= 0x1LL << 48;      // Return objects on parcel that are owned by the group
00120 const U64 GP_LAND_RETURN_GROUP_SET      = 0x1LL << 33;  // Return objects on parcel that are set to group
00121 const U64 GP_LAND_RETURN_NON_GROUP      = 0x1LL << 34;  // Return objects on parcel that are not set to group
00122 // Select a power-bit based on an object's relationship to a parcel.
00123 const U64 GP_LAND_RETURN                = GP_LAND_RETURN_GROUP_OWNED 
00124                                                                 | GP_LAND_RETURN_GROUP_SET      
00125                                                                 | GP_LAND_RETURN_NON_GROUP;
00126 const U64 GP_LAND_GARDENING             = 0x1LL << 35;  // Parcel Gardening - plant and move linden trees
00127 
00128 // Object Management
00129 const U64 GP_OBJECT_DEED                        = 0x1LL << 36;  // Deed Object
00130 // HOLE -- 0x1LL << 37
00131 const U64 GP_OBJECT_MANIPULATE          = 0x1LL << 38;  // Manipulate Group Owned Objects (Move, Copy, Mod)
00132 const U64 GP_OBJECT_SET_SALE            = 0x1LL << 39;  // Set Group Owned Object for Sale
00133 
00134 // Accounting
00135 const U64 GP_ACCOUNTING_ACCOUNTABLE = 0x1LL << 40;      // Pay Group Liabilities and Receive Group Dividends
00136 
00137 // Notices
00138 const U64 GP_NOTICES_SEND                       = 0x1LL << 42;  // Send Notices
00139 const U64 GP_NOTICES_RECEIVE            = 0x1LL << 43;  // Receive Notices and View Notice History
00140 
00141 // Proposals
00142 const U64 GP_PROPOSAL_START             = 0x1LL << 44;  // Start Proposal
00143 const U64 GP_PROPOSAL_VOTE              = 0x1LL << 45;  // Vote on Proposal
00144 
00145 const U64 GP_SESSION_JOIN = 0x1LL << 46; //can join session
00146 const U64 GP_SESSION_VOICE = 0x1LL << 47; //can hear/talk
00147 const U64 GP_SESSION_MODERATOR = 0x1LL << 49; //can mute people's session
00148 
00149 const U64 GP_DEFAULT_MEMBER = GP_ACCOUNTING_ACCOUNTABLE
00150                                                                 | GP_LAND_ALLOW_SET_HOME
00151                                                                 | GP_NOTICES_RECEIVE
00152                                                                 | GP_PROPOSAL_START
00153                                                                 | GP_PROPOSAL_VOTE
00154                                                                 | GP_SESSION_JOIN
00155                                                                 | GP_SESSION_VOICE
00156                                                                 ;
00157 
00158 const U64 GP_DEFAULT_OFFICER = GP_ACCOUNTING_ACCOUNTABLE
00159                                                                 | GP_GROUP_CHANGE_IDENTITY
00160                                                                 | GP_LAND_ADMIN
00161                                                                 | GP_LAND_ALLOW_EDIT_LAND
00162                                                                 | GP_LAND_ALLOW_FLY
00163                                                                 | GP_LAND_ALLOW_CREATE
00164                                                                 | GP_LAND_ALLOW_LANDMARK
00165                                                                 | GP_LAND_ALLOW_SET_HOME
00166                                                                 | GP_LAND_CHANGE_IDENTITY
00167                                                                 | GP_LAND_CHANGE_MEDIA
00168                                                                 | GP_LAND_DEED
00169                                                                 | GP_LAND_DIVIDE_JOIN
00170                                                                 | GP_LAND_EDIT
00171                                                                 | GP_LAND_FIND_PLACES
00172                                                                 | GP_LAND_GARDENING
00173                                                                 | GP_LAND_MANAGE_ALLOWED
00174                                                                 | GP_LAND_MANAGE_BANNED
00175                                                                 | GP_LAND_MANAGE_PASSES
00176                                                                 | GP_LAND_OPTIONS
00177                                                                 | GP_LAND_RELEASE
00178                                                                 | GP_LAND_RETURN_GROUP_OWNED
00179                                                                 | GP_LAND_RETURN_GROUP_SET
00180                                                                 | GP_LAND_RETURN_NON_GROUP
00181                                                                 | GP_LAND_SET_LANDING_POINT
00182                                                                 | GP_LAND_SET_SALE_INFO
00183                                                                 | GP_MEMBER_EJECT
00184                                                                 | GP_MEMBER_INVITE      
00185                                                                 | GP_MEMBER_OPTIONS
00186                                                                 | GP_MEMBER_VISIBLE_IN_DIR
00187                                                                 | GP_NOTICES_RECEIVE
00188                                                                 | GP_NOTICES_SEND
00189                                                                 | GP_OBJECT_DEED
00190                                                                 | GP_OBJECT_MANIPULATE
00191                                                                 | GP_OBJECT_SET_SALE
00192                                                                 | GP_PROPOSAL_START
00193                                                                 | GP_PROPOSAL_VOTE
00194                                                                 | GP_ROLE_ASSIGN_MEMBER_LIMITED
00195                                                                 | GP_ROLE_PROPERTIES
00196                                                                 | GP_SESSION_MODERATOR
00197                                                                 | GP_SESSION_JOIN
00198                                                                 | GP_SESSION_VOICE
00199                                                                 ;
00200 #endif

Generated on Thu Jul 1 06:09:59 2010 for Second Life Viewer by  doxygen 1.4.7