State Variables
ROYALTY_MODULE
GROUPING_MODULE
GROUP_IP_ASSET_REGISTRY
MAX_GROUP_SIZE
GroupInfo
token
: The reward token for the group, defined by the license terms attached to the group IPtotalMembers
: Total number of IPs in the grouppendingBalance
: Pending balance to be added to accRewardPerIpaccRewardPerIp
: Accumulated rewards per IP, times MAX_GROUP_SIZEaverageRewardShare
: The average reward share per IP, only increases as new IPs join with higher minimum share
Functions
initialize
accessManager
: The address of the protocol admin roles contract.
addIp
groupId
: The group ID.ipId
: The IP ID.minimumGroupRewardShare
: The minimum group reward share the IP expects to be added to the group.
totalGroupRewardShare
: The total group reward share after adding the IP.
removeIp
groupId
: The group ID.ipId
: The IP ID.
depositReward
groupId
: The group ID.token
: The reward token.amount
: The amount of reward.
getAvailableReward
groupId
: The group ID.token
: The reward token.ipIds
: The IP IDs.
uint256[] memory
: The rewards for each IP.
distributeRewards
groupId
: The group ID.token
: The reward tokens.ipIds
: The IP IDs.
rewards
: An array containing the reward amounts distributed to each IP.
getTotalIps
groupId
: The group ID.
uint256
: The total number of IPs in the group.
getIpAddedTime
groupId
: The group ID.ipId
: The IP ID.
uint256
: The timestamp when the IP was added to the group.
getIpRewardDebt
groupId
: The group ID.token
: The reward token.ipId
: The IP ID.
uint256
: The reward debt of the IP.
isIPAdded
groupId
: The group ID.ipId
: The IP ID.
bool
: True if the IP is added to the group, false otherwise.
getMinimumRewardShare
groupId
: The group ID.ipId
: The IP ID.
uint256
: The minimum reward share of the IP.
getTotalAllocatedRewardShare
groupId
: The group ID.
uint256
: The total allocated reward share of the group.