그룹 IP 자산 레지스트리는 그룹 구성원과 보상 풀을 포함한 그룹 IP 자산의 등록 및 추적을 관리하는 책임이 있습니다.

그룹 IP 자산 레지스트리는 매핑을 통해 그룹의 IP 계정과 개별 IP 계정 간의 그룹화 관계를 온체인에서 유지합니다:

GroupIPAssetRegistry.sol
mapping(address groupIpId => EnumerableSet.AddressSet memberIpIds) groups;

주요 기능

GroupIPAssetRegistry.sol
function registerGroup(address groupNft, uint256 groupNftId, address rewardPool) external onlyGroupingModule whenNotPaused returns (address groupId)

이 함수는 Story에 새로운 Group IPA를 등록합니다.

GroupIPAssetRegistry.sol
function addGroupMember(address groupId, address[] calldata ipIds) external onlyGroupingModule whenNotPaused

이미 등록된 IPA들을 기존 Group IPA에 추가합니다.

GroupIPAssetRegistry.sol
function removeGroupMember(address groupId, address[] calldata ipIds) external onlyGroupingModule whenNotPaused

Group IPA에서 등록된 IPA들을 제거합니다.