MoltenVK/MoltenVK/Utility/MVKFoundation.h
static inline bool mvkVkComponentMappingsMatch(VkComponentMapping cm1, VkComponentMapping cm2) {
	return (mvkVKComponentSwizzlesMatch(cm1.r, cm2.r, VK_COMPONENT_SWIZZLE_R) &&
			mvkVKComponentSwizzlesMatch(cm1.g, cm2.g, VK_COMPONENT_SWIZZLE_G) &&
			mvkVKComponentSwizzlesMatch(cm1.b, cm2.b, VK_COMPONENT_SWIZZLE_B) &&
			mvkVKComponentSwizzlesMatch(cm1.a, cm2.a, VK_COMPONENT_SWIZZLE_A));
}
/**
 * Returns whether the two swizzle component mappings match each other, by comparing the
 * corresponding elements of the two mappings. A component value of VK_COMPONENT_SWIZZLE_IDENTITY
 * on either mapping matches the VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_B,
 * or VK_COMPONENT_SWIZZLE_A value in the other mapping if it is the correct position.
 * A component value of VK_COMPONENT_SWIZZLE_MAX_ENUM is considered a wildcard and matches
 * any value in the corresponding component in the other mapping.
 */
Returns whether the two swizzle component mappings match each other, by comparing the
corresponding elements of the two mappings. A component value of VK_COMPONENT_SWIZZLE_IDENTITY
on either mapping matches the VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_B,
or VK_COMPONENT_SWIZZLE_A value in the other mapping if it is the correct position.
A component value of VK_COMPONENT_SWIZZLE_MAX_ENUM is considered a wildcard and matches
any value in the corresponding component in the other mapping.
Returns whether the two swizzle component mappings match each other by comparing the corresponding elements of the two mappings . A component value of VK_COMPONENT_SWIZZLE_IDENTITY on either mapping matches the VK_COMPONENT_SWIZZLE_R VK_COMPONENT_SWIZZLE_G VK_COMPONENT_SWIZZLE_B or VK_COMPONENT_SWIZZLE_A value in the other mapping if it is the correct position . A component value of VK_COMPONENT_SWIZZLE_MAX_ENUM is considered a wildcard and matches any value in the corresponding component in the other mapping .
static inline bool mvkVkComponentMappingsMatch(VkComponentMapping cm1, VkComponentMapping cm2) {
	return (mvkVKComponentSwizzlesMatch(cm1.r, cm2.r, VK_COMPONENT_SWIZZLE_R) &&
			mvkVKComponentSwizzlesMatch(cm1.g, cm2.g, VK_COMPONENT_SWIZZLE_G) &&
			mvkVKComponentSwizzlesMatch(cm1.b, cm2.b, VK_COMPONENT_SWIZZLE_B) &&
			mvkVKComponentSwizzlesMatch(cm1.a, cm2.a, VK_COMPONENT_SWIZZLE_A));
}
static inline bool mvkVkComponentMappingsMatch ( VkComponentMapping cm1 , VkComponentMapping cm2 ) { return ( mvkVKComponentSwizzlesMatch ( cm1 . r , cm2 . r , VK_COMPONENT_SWIZZLE_R ) && mvkVKComponentSwizzlesMatch ( cm1 . g , cm2 . g , VK_COMPONENT_SWIZZLE_G ) && mvkVKComponentSwizzlesMatch ( cm1 . b , cm2 . b , VK_COMPONENT_SWIZZLE_B ) && mvkVKComponentSwizzlesMatch ( cm1 . a , cm2 . a , VK_COMPONENT_SWIZZLE_A ) ) ; }
Returns whether the two swizzle component mappings match each other, by comparing the
 corresponding elements of the two mappings.
Returns whether the two swizzle component mappings match each other by comparing the corresponding elements of the two mappings .