Registry
GroupIPAssetRegistry
GroupIPAssetRegistry는 그룹 IP 자산(IPA)의 등록 및 추적을 관리하며, 여기에는 그룹 구성원과 보상 풀이 포함됩니다. 그룹 등록, 그룹 멤버십 관리 및 그룹 보상 풀 처리를 위한 기능을 제공합니다.
상태 변수
MAX_GROUP_SIZE
그룹에 허용되는 최대 구성원 수입니다.
GROUPING_MODULE
프로토콜 전체 Grouping Module의 주소입니다.
함수
registerGroup
그룹 IPA를 등록합니다.
Parameters:
groupNft
: 그룹 NFT의 주소입니다.groupNftId
: 그룹 NFT의 ID입니다.rewardPool
: 그룹 보상 풀의 주소입니다.registerFeePayer
: 등록 수수료를 지불하는 계정의 주소입니다.
Returns:
groupId
: 새로 등록된 그룹 IPA의 주소입니다.
whitelistGroupRewardPool
그룹 보상 풀을 화이트리스트에 등록합니다.
Parameters:
rewardPool
: 그룹 보상 풀의 주소입니다.allowed
: 그룹 보상 풀이 화이트리스트에 등록되었는지 여부입니다.
addGroupMember
그룹 IPA에 구성원을 추가합니다.
Parameters:
groupId
: 그룹 IPA의 주소입니다.ipIds
: 그룹 IPA에 추가할 IP들의 주소입니다.
removeGroupMember
그룹 IPA에서 구성원을 제거합니다.
Parameters:
groupId
: 그룹 IPA의 주소입니다.ipIds
: 그룹 IPA에서 제거할 IP들의 주소입니다.
isRegisteredGroup
ID를 기반으로 그룹 IPA가 등록되었는지 확인합니다.
Parameters:
groupId
: 그룹 IPA의 주소입니다.
Returns:
isRegistered
: 그룹 IPA가 프로토콜에 등록되었는지 여부입니다.
getGroupRewardPool
그룹 IPA의 그룹 보상 풀을 검색합니다.
Parameters:
groupId
: 그룹 IPA의 주소입니다.
Returns:
rewardPool
: 그룹 보상 풀의 주소입니다.
isWhitelistedGroupRewardPool
그룹 보상 풀이 화이트리스트에 등록되어 있는지 확인합니다.
Parameters:
rewardPool
: 그룹 보상 풀의 주소입니다.
Returns:
isWhitelisted
: 그룹 보상 풀이 화이트리스트에 등록되어 있는지 여부입니다.
getGroupMembers
그룹 IPA의 그룹 구성원을 검색합니다.
Parameters:
groupId
: 그룹 IPA의 주소입니다.startIndex
: 검색할 그룹 구성원의 시작 인덱스입니다.size
: 검색할 그룹 구성원의 크기입니다.
Returns:
results
: 그룹 구성원들의 주소입니다.
containsIp
IP가 그룹 IPA의 구성원인지 확인합니다.
Parameters:
groupId
: 그룹 IPA의 주소입니다.ipId
: IP의 주소입니다.
Returns:
isMember
: IP가 그룹 IPA의 구성원인지 여부입니다.
totalMembers
그룹 IPA의 총 구성원 수를 검색합니다.
Parameters:
groupId
: 그룹 IPA의 주소입니다.
Returns:
totalMembers
: 그룹 IPA의 총 구성원 수입니다.