BKE_idtype: Add access to IDTypeInfo from idtype index.
This commit is contained in:
@@ -271,6 +271,7 @@ extern IDTypeInfo IDType_ID_LINK_PLACEHOLDER;
|
||||
void BKE_idtype_init(void);
|
||||
|
||||
/* General helpers. */
|
||||
const IDTypeInfo *BKE_idtype_get_info_from_idtype_index(const int idtype_index);
|
||||
const IDTypeInfo *BKE_idtype_get_info_from_idcode(short id_code);
|
||||
const IDTypeInfo *BKE_idtype_get_info_from_id(const ID *id);
|
||||
|
||||
|
||||
@@ -110,19 +110,22 @@ void BKE_idtype_init()
|
||||
id_type_init();
|
||||
}
|
||||
|
||||
const IDTypeInfo *BKE_idtype_get_info_from_idcode(const short id_code)
|
||||
const IDTypeInfo *BKE_idtype_get_info_from_idtype_index(const int idtype_index)
|
||||
{
|
||||
int id_index = BKE_idtype_idcode_to_index(id_code);
|
||||
|
||||
if (id_index >= 0 && id_index < ARRAY_SIZE(id_types) && id_types[id_index] != nullptr &&
|
||||
id_types[id_index]->name[0] != '\0')
|
||||
if (idtype_index >= 0 && idtype_index < ARRAY_SIZE(id_types) &&
|
||||
id_types[idtype_index] != nullptr && id_types[idtype_index]->name[0] != '\0')
|
||||
{
|
||||
return id_types[id_index];
|
||||
return id_types[idtype_index];
|
||||
}
|
||||
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
const IDTypeInfo *BKE_idtype_get_info_from_idcode(const short id_code)
|
||||
{
|
||||
return BKE_idtype_get_info_from_idtype_index(BKE_idtype_idcode_to_index(id_code));
|
||||
}
|
||||
|
||||
const IDTypeInfo *BKE_idtype_get_info_from_id(const ID *id)
|
||||
{
|
||||
return BKE_idtype_get_info_from_idcode(GS(id->name));
|
||||
|
||||
Reference in New Issue
Block a user