Cleanup nclx API to use temp structs
diff --git a/include/avif/avif.h b/include/avif/avif.h
index 8be8c45..3705a99 100644
--- a/include/avif/avif.h
+++ b/include/avif/avif.h
@@ -283,7 +283,7 @@
 
 void avifImageSetProfileNone(avifImage * image);
 void avifImageSetProfileICC(avifImage * image, uint8_t * icc, size_t iccSize);
-void avifImageSetProfileNCLX(avifImage * image, uint16_t colourPrimaries, uint16_t transferCharacteristics, uint16_t matrixCoefficients, uint8_t fullRangeFlag);
+void avifImageSetProfileNCLX(avifImage * image, avifNclxColorProfile * nclx);
 
 void avifImageAllocatePlanes(avifImage * image, uint32_t planes); // Ignores any pre-existing planes
 void avifImageFreePlanes(avifImage * image, uint32_t planes);     // Ignores already-freed planes
diff --git a/src/avif.c b/src/avif.c
index 6bb1b2d..8ccb645 100644
--- a/src/avif.c
+++ b/src/avif.c
@@ -81,14 +81,11 @@
     }
 }
 
-void avifImageSetProfileNCLX(avifImage * image, uint16_t colourPrimaries, uint16_t transferCharacteristics, uint16_t matrixCoefficients, uint8_t fullRangeFlag)
+void avifImageSetProfileNCLX(avifImage * image, avifNclxColorProfile * nclx)
 {
     avifImageSetProfileNone(image);
     image->profileFormat = AVIF_PROFILE_FORMAT_NCLX;
-    image->nclx.colourPrimaries = colourPrimaries;
-    image->nclx.transferCharacteristics = transferCharacteristics;
-    image->nclx.matrixCoefficients = matrixCoefficients;
-    image->nclx.fullRangeFlag = fullRangeFlag;
+    memcpy(&image->nclx, nclx, sizeof(avifNclxColorProfile));
 }
 
 void avifImageAllocatePlanes(avifImage * image, uint32_t planes)
diff --git a/src/read.c b/src/read.c
index 73e7952..1a0ad89 100644
--- a/src/read.c
+++ b/src/read.c
@@ -703,11 +703,7 @@
         if (colorOBUItem->colr.format == AVIF_PROFILE_FORMAT_ICC) {
             avifImageSetProfileICC(image, colorOBUItem->colr.icc, colorOBUItem->colr.iccSize);
         } else if (colorOBUItem->colr.format == AVIF_PROFILE_FORMAT_NCLX) {
-            avifImageSetProfileNCLX(image,
-                colorOBUItem->colr.nclx.colourPrimaries,
-                colorOBUItem->colr.nclx.transferCharacteristics,
-                colorOBUItem->colr.nclx.matrixCoefficients,
-                colorOBUItem->colr.nclx.fullRangeFlag);
+            avifImageSetProfileNCLX(image, &colorOBUItem->colr.nclx);
         }
     }