Lines Matching full:image

13 %                    Read/Write Kodak Cineon Image Format                     %
14 % Cineon Image Format is a subset of SMTPE CIN %
40 % Cineon image file format draft is available at
57 #include "MagickCore/image.h"
58 #include "MagickCore/image-private.h"
213 image; member
232 WriteCINImage(const ImageInfo *,Image *,ExceptionInfo *);
245 % IsCIN() returns MagickTrue if the image format type, identified by the magick
254 % o magick: compare image format pattern against these bytes.
279 % ReadCINImage() reads an CIN X image file and returns it. It allocates
280 % the memory necessary for the new Image structure and returns a point to the
281 % new image.
285 % Image *ReadCINImage(const ImageInfo *image_info,
290 % o image_info: the image info.
380 static Image *ReadCINImage(const ImageInfo *image_info,ExceptionInfo *exception) in ReadCINImage()
391 Image in ReadCINImage()
392 *image; in ReadCINImage() local
425 Open image file. in ReadCINImage()
434 image=AcquireImage(image_info,exception); in ReadCINImage()
435 status=OpenBlob(image_info,image,ReadBinaryBlobMode,exception); in ReadCINImage()
438 image=DestroyImageList(image); in ReadCINImage()
439 return((Image *) NULL); in ReadCINImage()
445 count=ReadBlob(image,4,magick); in ReadCINImage()
451 image->endian=(magick[0] == 0x80) && (magick[1] == 0x2a) && in ReadCINImage()
453 cin.file.image_offset=ReadBlobLong(image); in ReadCINImage()
455 cin.file.generic_length=ReadBlobLong(image); in ReadCINImage()
457 cin.file.industry_length=ReadBlobLong(image); in ReadCINImage()
459 cin.file.user_length=ReadBlobLong(image); in ReadCINImage()
461 cin.file.file_size=ReadBlobLong(image); in ReadCINImage()
463 offset+=ReadBlob(image,sizeof(cin.file.version),(unsigned char *) in ReadCINImage()
466 (void) SetImageProperty(image,"dpx:file.version",property,exception); in ReadCINImage()
467 offset+=ReadBlob(image,sizeof(cin.file.filename),(unsigned char *) in ReadCINImage()
470 (void) SetImageProperty(image,"dpx:file.filename",property,exception); in ReadCINImage()
471 offset+=ReadBlob(image,sizeof(cin.file.create_date),(unsigned char *) in ReadCINImage()
475 (void) SetImageProperty(image,"dpx:file.create_date",property,exception); in ReadCINImage()
476 offset+=ReadBlob(image,sizeof(cin.file.create_time),(unsigned char *) in ReadCINImage()
480 (void) SetImageProperty(image,"dpx:file.create_time",property,exception); in ReadCINImage()
481 offset+=ReadBlob(image,sizeof(cin.file.reserve),(unsigned char *) in ReadCINImage()
484 Image information. in ReadCINImage()
486 cin.image.orientation=(unsigned char) ReadBlobByte(image); in ReadCINImage()
488 if (cin.image.orientation != (unsigned char) (~0)) in ReadCINImage()
489 (void) FormatImageProperty(image,"dpx:image.orientation","%d", in ReadCINImage()
490 cin.image.orientation); in ReadCINImage()
491 switch (cin.image.orientation) in ReadCINImage()
494 case 0: image->orientation=TopLeftOrientation; break; in ReadCINImage()
495 case 1: image->orientation=TopRightOrientation; break; in ReadCINImage()
496 case 2: image->orientation=BottomLeftOrientation; break; in ReadCINImage()
497 case 3: image->orientation=BottomRightOrientation; break; in ReadCINImage()
498 case 4: image->orientation=LeftTopOrientation; break; in ReadCINImage()
499 case 5: image->orientation=RightTopOrientation; break; in ReadCINImage()
500 case 6: image->orientation=LeftBottomOrientation; break; in ReadCINImage()
501 case 7: image->orientation=RightBottomOrientation; break; in ReadCINImage()
503 cin.image.number_channels=(unsigned char) ReadBlobByte(image); in ReadCINImage()
505 offset+=ReadBlob(image,sizeof(cin.image.reserve1),(unsigned char *) in ReadCINImage()
506 cin.image.reserve1); in ReadCINImage()
509 cin.image.channel[i].designator[0]=(unsigned char) ReadBlobByte(image); in ReadCINImage()
511 cin.image.channel[i].designator[1]=(unsigned char) ReadBlobByte(image); in ReadCINImage()
513 cin.image.channel[i].bits_per_pixel=(unsigned char) ReadBlobByte(image); in ReadCINImage()
515 cin.image.channel[i].reserve=(unsigned char) ReadBlobByte(image); in ReadCINImage()
517 cin.image.channel[i].pixels_per_line=ReadBlobLong(image); in ReadCINImage()
519 cin.image.channel[i].lines_per_image=ReadBlobLong(image); in ReadCINImage()
521 cin.image.channel[i].min_data=ReadBlobFloat(image); in ReadCINImage()
523 cin.image.channel[i].min_quantity=ReadBlobFloat(image); in ReadCINImage()
525 cin.image.channel[i].max_data=ReadBlobFloat(image); in ReadCINImage()
527 cin.image.channel[i].max_quantity=ReadBlobFloat(image); in ReadCINImage()
530 cin.image.white_point[0]=ReadBlobFloat(image); in ReadCINImage()
532 if (IsFloatDefined(cin.image.white_point[0]) != MagickFalse) in ReadCINImage()
533 image->chromaticity.white_point.x=cin.image.white_point[0]; in ReadCINImage()
534 cin.image.white_point[1]=ReadBlobFloat(image); in ReadCINImage()
536 if (IsFloatDefined(cin.image.white_point[1]) != MagickFalse) in ReadCINImage()
537 image->chromaticity.white_point.y=cin.image.white_point[1]; in ReadCINImage()
538 cin.image.red_primary_chromaticity[0]=ReadBlobFloat(image); in ReadCINImage()
540 if (IsFloatDefined(cin.image.red_primary_chromaticity[0]) != MagickFalse) in ReadCINImage()
541 image->chromaticity.red_primary.x=cin.image.red_primary_chromaticity[0]; in ReadCINImage()
542 cin.image.red_primary_chromaticity[1]=ReadBlobFloat(image); in ReadCINImage()
544 if (IsFloatDefined(cin.image.red_primary_chromaticity[1]) != MagickFalse) in ReadCINImage()
545 image->chromaticity.red_primary.y=cin.image.red_primary_chromaticity[1]; in ReadCINImage()
546 cin.image.green_primary_chromaticity[0]=ReadBlobFloat(image); in ReadCINImage()
548 if (IsFloatDefined(cin.image.green_primary_chromaticity[0]) != MagickFalse) in ReadCINImage()
549 image->chromaticity.red_primary.x=cin.image.green_primary_chromaticity[0]; in ReadCINImage()
550 cin.image.green_primary_chromaticity[1]=ReadBlobFloat(image); in ReadCINImage()
552 if (IsFloatDefined(cin.image.green_primary_chromaticity[1]) != MagickFalse) in ReadCINImage()
553 image->chromaticity.green_primary.y=cin.image.green_primary_chromaticity[1]; in ReadCINImage()
554 cin.image.blue_primary_chromaticity[0]=ReadBlobFloat(image); in ReadCINImage()
556 if (IsFloatDefined(cin.image.blue_primary_chromaticity[0]) != MagickFalse) in ReadCINImage()
557 image->chromaticity.blue_primary.x=cin.image.blue_primary_chromaticity[0]; in ReadCINImage()
558 cin.image.blue_primary_chromaticity[1]=ReadBlobFloat(image); in ReadCINImage()
560 if (IsFloatDefined(cin.image.blue_primary_chromaticity[1]) != MagickFalse) in ReadCINImage()
561 image->chromaticity.blue_primary.y=cin.image.blue_primary_chromaticity[1]; in ReadCINImage()
562 offset+=ReadBlob(image,sizeof(cin.image.label),(unsigned char *) in ReadCINImage()
563 cin.image.label); in ReadCINImage()
564 (void) CopyMagickString(property,cin.image.label,sizeof(cin.image.label)); in ReadCINImage()
565 (void) SetImageProperty(image,"dpx:image.label",property,exception); in ReadCINImage()
566 offset+=ReadBlob(image,sizeof(cin.image.reserve),(unsigned char *) in ReadCINImage()
567 cin.image.reserve); in ReadCINImage()
569 Image data format information. in ReadCINImage()
571 cin.data_format.interleave=(unsigned char) ReadBlobByte(image); in ReadCINImage()
573 cin.data_format.packing=(unsigned char) ReadBlobByte(image); in ReadCINImage()
575 cin.data_format.sign=(unsigned char) ReadBlobByte(image); in ReadCINImage()
577 cin.data_format.sense=(unsigned char) ReadBlobByte(image); in ReadCINImage()
579 cin.data_format.line_pad=ReadBlobLong(image); in ReadCINImage()
581 cin.data_format.channel_pad=ReadBlobLong(image); in ReadCINImage()
583 offset+=ReadBlob(image,sizeof(cin.data_format.reserve),(unsigned char *) in ReadCINImage()
586 Image origination information. in ReadCINImage()
588 cin.origination.x_offset=ReadBlobSignedLong(image); in ReadCINImage()
591 (void) FormatImageProperty(image,"dpx:origination.x_offset","%.20g", in ReadCINImage()
593 cin.origination.y_offset=(ssize_t) ReadBlobLong(image); in ReadCINImage()
596 (void) FormatImageProperty(image,"dpx:origination.y_offset","%.20g", in ReadCINImage()
598 offset+=ReadBlob(image,sizeof(cin.origination.filename),(unsigned char *) in ReadCINImage()
602 (void) SetImageProperty(image,"dpx:origination.filename",property,exception); in ReadCINImage()
603 offset+=ReadBlob(image,sizeof(cin.origination.create_date),(unsigned char *) in ReadCINImage()
607 (void) SetImageProperty(image,"dpx:origination.create_date",property, in ReadCINImage()
609 offset+=ReadBlob(image,sizeof(cin.origination.create_time),(unsigned char *) in ReadCINImage()
613 (void) SetImageProperty(image,"dpx:origination.create_time",property, in ReadCINImage()
615 offset+=ReadBlob(image,sizeof(cin.origination.device),(unsigned char *) in ReadCINImage()
619 (void) SetImageProperty(image,"dpx:origination.device",property,exception); in ReadCINImage()
620 offset+=ReadBlob(image,sizeof(cin.origination.model),(unsigned char *) in ReadCINImage()
624 (void) SetImageProperty(image,"dpx:origination.model",property,exception); in ReadCINImage()
627 offset+=ReadBlob(image,sizeof(cin.origination.serial),(unsigned char *) in ReadCINImage()
631 (void) SetImageProperty(image,"dpx:origination.serial",property,exception); in ReadCINImage()
632 cin.origination.x_pitch=ReadBlobFloat(image); in ReadCINImage()
634 cin.origination.y_pitch=ReadBlobFloat(image); in ReadCINImage()
636 cin.origination.gamma=ReadBlobFloat(image); in ReadCINImage()
639 image->gamma=cin.origination.gamma; in ReadCINImage()
640 offset+=ReadBlob(image,sizeof(cin.origination.reserve),(unsigned char *) in ReadCINImage()
648 Image film information. in ReadCINImage()
650 cin.film.id=ReadBlobByte(image); in ReadCINImage()
654 (void) FormatImageProperty(image,"dpx:film.id","%d",cin.film.id); in ReadCINImage()
655 cin.film.type=ReadBlobByte(image); in ReadCINImage()
659 (void) FormatImageProperty(image,"dpx:film.type","%d",cin.film.type); in ReadCINImage()
660 cin.film.offset=ReadBlobByte(image); in ReadCINImage()
664 (void) FormatImageProperty(image,"dpx:film.offset","%d", in ReadCINImage()
666 cin.film.reserve1=ReadBlobByte(image); in ReadCINImage()
668 cin.film.prefix=ReadBlobLong(image); in ReadCINImage()
671 (void) FormatImageProperty(image,"dpx:film.prefix","%.20g",(double) in ReadCINImage()
673 cin.film.count=ReadBlobLong(image); in ReadCINImage()
675 offset+=ReadBlob(image,sizeof(cin.film.format),(unsigned char *) in ReadCINImage()
678 (void) SetImageProperty(image,"dpx:film.format",property,exception); in ReadCINImage()
679 cin.film.frame_position=ReadBlobLong(image); in ReadCINImage()
682 (void) FormatImageProperty(image,"dpx:film.frame_position","%.20g", in ReadCINImage()
684 cin.film.frame_rate=ReadBlobFloat(image); in ReadCINImage()
687 (void) FormatImageProperty(image,"dpx:film.frame_rate","%g", in ReadCINImage()
689 offset+=ReadBlob(image,sizeof(cin.film.frame_id),(unsigned char *) in ReadCINImage()
693 (void) SetImageProperty(image,"dpx:film.frame_id",property,exception); in ReadCINImage()
694 offset+=ReadBlob(image,sizeof(cin.film.slate_info),(unsigned char *) in ReadCINImage()
698 (void) SetImageProperty(image,"dpx:film.slate_info",property,exception); in ReadCINImage()
699 offset+=ReadBlob(image,sizeof(cin.film.reserve),(unsigned char *) in ReadCINImage()
710 if (cin.file.user_length > GetBlobSize(image)) in ReadCINImage()
716 offset+=ReadBlob(image,GetStringInfoLength(profile), in ReadCINImage()
718 (void) SetImageProfile(image,"dpx:user.data",profile,exception); in ReadCINImage()
721 image->depth=cin.image.channel[0].bits_per_pixel; in ReadCINImage()
722 image->columns=cin.image.channel[0].pixels_per_line; in ReadCINImage()
723 image->rows=cin.image.channel[0].lines_per_image; in ReadCINImage()
726 (void) CloseBlob(image); in ReadCINImage()
727 return(image); in ReadCINImage()
729 if (((MagickSizeType) image->columns*image->rows/8) > GetBlobSize(image)) in ReadCINImage()
736 c=ReadBlobByte(image); in ReadCINImage()
742 status=SetImageExtent(image,image->columns,image->rows,exception); in ReadCINImage()
744 return(DestroyImageList(image)); in ReadCINImage()
745 (void) SetImageBackgroundColor(image,exception); in ReadCINImage()
747 Convert CIN raster image to pixel packets. in ReadCINImage()
749 quantum_info=AcquireQuantumInfo(image_info,image); in ReadCINImage()
755 length=GetQuantumExtent(image,quantum_info,quantum_type); in ReadCINImage()
756 length=GetBytesPerRow(image->columns,3,image->depth,MagickTrue); in ReadCINImage()
757 if (cin.image.number_channels == 1) in ReadCINImage()
760 length=GetBytesPerRow(image->columns,1,image->depth,MagickTrue); in ReadCINImage()
763 for (y=0; y < (ssize_t) image->rows; y++) in ReadCINImage()
768 q=QueueAuthenticPixels(image,0,y,image->columns,1,exception); in ReadCINImage()
771 stream=ReadBlobStream(image,length,pixels,&count); in ReadCINImage()
774 (void) ImportQuantumPixels(image,(CacheView *) NULL,quantum_info, in ReadCINImage()
776 if (SyncAuthenticPixels(image,exception) == MagickFalse) in ReadCINImage()
778 if (image->previous == (Image *) NULL) in ReadCINImage()
780 status=SetImageProgress(image,LoadImageTag,(MagickOffsetType) y, in ReadCINImage()
781 image->rows); in ReadCINImage()
786 SetQuantumImageType(image,quantum_type); in ReadCINImage()
788 if (EOFBlob(image) != MagickFalse) in ReadCINImage()
790 image->filename); in ReadCINImage()
791 SetImageColorspace(image,LogColorspace,exception); in ReadCINImage()
792 (void) CloseBlob(image); in ReadCINImage()
793 return(GetFirstImageInList(image)); in ReadCINImage()
807 % RegisterCINImage() adds attributes for the CIN image format to the list of
808 % of supported formats. The attributes include the image format tag, a method
823 entry=AcquireMagickInfo("CIN","CIN","Cineon Image File"); in RegisterCINImage()
868 % WriteCINImage() writes an image in CIN encoded image format.
873 % Image *image,ExceptionInfo *exception)
877 % o image_info: the image info.
879 % o image: The image.
886 const Image *image,const char *property,ExceptionInfo *exception) in GetCINProperty() argument
894 return(GetImageProperty(image,property,exception)); in GetCINProperty()
897 static MagickBooleanType WriteCINImage(const ImageInfo *image_info,Image *image, in WriteCINImage() argument
947 Open output image file. in WriteCINImage()
951 assert(image != (Image *) NULL); in WriteCINImage()
952 assert(image->signature == MagickCoreSignature); in WriteCINImage()
953 if (image->debug != MagickFalse) in WriteCINImage()
954 (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); in WriteCINImage()
957 status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception); in WriteCINImage()
960 if (image->colorspace != LogColorspace) in WriteCINImage()
961 (void) TransformImageColorspace(image,LogColorspace,exception); in WriteCINImage()
963 Write image information. in WriteCINImage()
968 offset+=WriteBlobLong(image,(unsigned int) cin.file.magic); in WriteCINImage()
970 offset+=WriteBlobLong(image,(unsigned int) cin.file.image_offset); in WriteCINImage()
972 offset+=WriteBlobLong(image,(unsigned int) cin.file.generic_length); in WriteCINImage()
974 offset+=WriteBlobLong(image,(unsigned int) cin.file.industry_length); in WriteCINImage()
976 profile=GetImageProfile(image,"dpx:user.data"); in WriteCINImage()
982 offset+=WriteBlobLong(image,(unsigned int) cin.file.user_length); in WriteCINImage()
983 cin.file.file_size=4*image->columns*image->rows+0x2000; in WriteCINImage()
984 offset+=WriteBlobLong(image,(unsigned int) cin.file.file_size); in WriteCINImage()
986 offset+=WriteBlob(image,sizeof(cin.file.version),(unsigned char *) in WriteCINImage()
988 value=GetCINProperty(image_info,image,"dpx:file.filename",exception); in WriteCINImage()
992 (void) CopyMagickString(cin.file.filename,image->filename, in WriteCINImage()
994 offset+=WriteBlob(image,sizeof(cin.file.filename),(unsigned char *) in WriteCINImage()
1002 offset+=WriteBlob(image,sizeof(cin.file.create_date),(unsigned char *) in WriteCINImage()
1006 offset+=WriteBlob(image,sizeof(cin.file.create_time),(unsigned char *) in WriteCINImage()
1008 offset+=WriteBlob(image,sizeof(cin.file.reserve),(unsigned char *) in WriteCINImage()
1010 cin.image.orientation=0x00; in WriteCINImage()
1011 offset+=WriteBlobByte(image,cin.image.orientation); in WriteCINImage()
1012 cin.image.number_channels=3; in WriteCINImage()
1013 offset+=WriteBlobByte(image,cin.image.number_channels); in WriteCINImage()
1014 offset+=WriteBlob(image,sizeof(cin.image.reserve1),(unsigned char *) in WriteCINImage()
1015 cin.image.reserve1); in WriteCINImage()
1018 cin.image.channel[i].designator[0]=0; /* universal metric */ in WriteCINImage()
1019 offset+=WriteBlobByte(image,cin.image.channel[0].designator[0]); in WriteCINImage()
1020 cin.image.channel[i].designator[1]=(unsigned char) (i > 3 ? 0 : i+1); /* channel color */; in WriteCINImage()
1021 offset+=WriteBlobByte(image,cin.image.channel[1].designator[0]); in WriteCINImage()
1022 cin.image.channel[i].bits_per_pixel=(unsigned char) image->depth; in WriteCINImage()
1023 offset+=WriteBlobByte(image,cin.image.channel[0].bits_per_pixel); in WriteCINImage()
1024 offset+=WriteBlobByte(image,cin.image.channel[0].reserve); in WriteCINImage()
1025 cin.image.channel[i].pixels_per_line=image->columns; in WriteCINImage()
1026 offset+=WriteBlobLong(image,(unsigned int) in WriteCINImage()
1027 cin.image.channel[0].pixels_per_line); in WriteCINImage()
1028 cin.image.channel[i].lines_per_image=image->rows; in WriteCINImage()
1029 offset+=WriteBlobLong(image,(unsigned int) in WriteCINImage()
1030 cin.image.channel[0].lines_per_image); in WriteCINImage()
1031 cin.image.channel[i].min_data=0; in WriteCINImage()
1032 offset+=WriteBlobFloat(image,cin.image.channel[0].min_data); in WriteCINImage()
1033 cin.image.channel[i].min_quantity=0.0; in WriteCINImage()
1034 offset+=WriteBlobFloat(image,cin.image.channel[0].min_quantity); in WriteCINImage()
1035 cin.image.channel[i].max_data=(float) ((MagickOffsetType) in WriteCINImage()
1036 GetQuantumRange(image->depth)); in WriteCINImage()
1037 offset+=WriteBlobFloat(image,cin.image.channel[0].max_data); in WriteCINImage()
1038 cin.image.channel[i].max_quantity=2.048f; in WriteCINImage()
1039 offset+=WriteBlobFloat(image,cin.image.channel[0].max_quantity); in WriteCINImage()
1041 offset+=WriteBlobFloat(image,image->chromaticity.white_point.x); in WriteCINImage()
1042 offset+=WriteBlobFloat(image,image->chromaticity.white_point.y); in WriteCINImage()
1043 offset+=WriteBlobFloat(image,image->chromaticity.red_primary.x); in WriteCINImage()
1044 offset+=WriteBlobFloat(image,image->chromaticity.red_primary.y); in WriteCINImage()
1045 offset+=WriteBlobFloat(image,image->chromaticity.green_primary.x); in WriteCINImage()
1046 offset+=WriteBlobFloat(image,image->chromaticity.green_primary.y); in WriteCINImage()
1047 offset+=WriteBlobFloat(image,image->chromaticity.blue_primary.x); in WriteCINImage()
1048 offset+=WriteBlobFloat(image,image->chromaticity.blue_primary.y); in WriteCINImage()
1049 value=GetCINProperty(image_info,image,"dpx:image.label",exception); in WriteCINImage()
1051 (void) CopyMagickString(cin.image.label,value,sizeof(cin.image.label)); in WriteCINImage()
1052 offset+=WriteBlob(image,sizeof(cin.image.label),(unsigned char *) in WriteCINImage()
1053 cin.image.label); in WriteCINImage()
1054 offset+=WriteBlob(image,sizeof(cin.image.reserve),(unsigned char *) in WriteCINImage()
1055 cin.image.reserve); in WriteCINImage()
1060 offset+=WriteBlobByte(image,cin.data_format.interleave); in WriteCINImage()
1062 offset+=WriteBlobByte(image,cin.data_format.packing); in WriteCINImage()
1064 offset+=WriteBlobByte(image,cin.data_format.sign); in WriteCINImage()
1065 cin.data_format.sense=0; /* image sense: positive image */ in WriteCINImage()
1066 offset+=WriteBlobByte(image,cin.data_format.sense); in WriteCINImage()
1068 offset+=WriteBlobLong(image,(unsigned int) cin.data_format.line_pad); in WriteCINImage()
1070 offset+=WriteBlobLong(image,(unsigned int) cin.data_format.channel_pad); in WriteCINImage()
1071 offset+=WriteBlob(image,sizeof(cin.data_format.reserve),(unsigned char *) in WriteCINImage()
1077 value=GetCINProperty(image_info,image,"dpx:origination.x_offset",exception); in WriteCINImage()
1080 offset+=WriteBlobLong(image,(unsigned int) cin.origination.x_offset); in WriteCINImage()
1082 value=GetCINProperty(image_info,image,"dpx:origination.y_offset",exception); in WriteCINImage()
1085 offset+=WriteBlobLong(image,(unsigned int) cin.origination.y_offset); in WriteCINImage()
1086 value=GetCINProperty(image_info,image,"dpx:origination.filename",exception); in WriteCINImage()
1091 (void) CopyMagickString(cin.origination.filename,image->filename, in WriteCINImage()
1093 offset+=WriteBlob(image,sizeof(cin.origination.filename),(unsigned char *) in WriteCINImage()
1100 offset+=WriteBlob(image,sizeof(cin.origination.create_date),(unsigned char *) in WriteCINImage()
1105 offset+=WriteBlob(image,sizeof(cin.origination.create_time),(unsigned char *) in WriteCINImage()
1107 value=GetCINProperty(image_info,image,"dpx:origination.device",exception); in WriteCINImage()
1111 offset+=WriteBlob(image,sizeof(cin.origination.device),(unsigned char *) in WriteCINImage()
1113 value=GetCINProperty(image_info,image,"dpx:origination.model",exception); in WriteCINImage()
1117 offset+=WriteBlob(image,sizeof(cin.origination.model),(unsigned char *) in WriteCINImage()
1119 value=GetCINProperty(image_info,image,"dpx:origination.serial",exception); in WriteCINImage()
1123 offset+=WriteBlob(image,sizeof(cin.origination.serial),(unsigned char *) in WriteCINImage()
1126 value=GetCINProperty(image_info,image,"dpx:origination.x_pitch",exception); in WriteCINImage()
1129 offset+=WriteBlobFloat(image,cin.origination.x_pitch); in WriteCINImage()
1131 value=GetCINProperty(image_info,image,"dpx:origination.y_pitch",exception); in WriteCINImage()
1134 offset+=WriteBlobFloat(image,cin.origination.y_pitch); in WriteCINImage()
1135 cin.origination.gamma=image->gamma; in WriteCINImage()
1136 offset+=WriteBlobFloat(image,cin.origination.gamma); in WriteCINImage()
1137 offset+=WriteBlob(image,sizeof(cin.origination.reserve),(unsigned char *) in WriteCINImage()
1140 Image film information. in WriteCINImage()
1143 value=GetCINProperty(image_info,image,"dpx:film.id",exception); in WriteCINImage()
1146 offset+=WriteBlobByte(image,(unsigned char) cin.film.id); in WriteCINImage()
1148 value=GetCINProperty(image_info,image,"dpx:film.type",exception); in WriteCINImage()
1151 offset+=WriteBlobByte(image,(unsigned char) cin.film.type); in WriteCINImage()
1153 value=GetCINProperty(image_info,image,"dpx:film.offset",exception); in WriteCINImage()
1156 offset+=WriteBlobByte(image,(unsigned char) cin.film.offset); in WriteCINImage()
1157 offset+=WriteBlobByte(image,(unsigned char) cin.film.reserve1); in WriteCINImage()
1159 value=GetCINProperty(image_info,image,"dpx:film.prefix",exception); in WriteCINImage()
1162 offset+=WriteBlobLong(image,(unsigned int) cin.film.prefix); in WriteCINImage()
1164 value=GetCINProperty(image_info,image,"dpx:film.count",exception); in WriteCINImage()
1167 offset+=WriteBlobLong(image,(unsigned int) cin.film.count); in WriteCINImage()
1168 value=GetCINProperty(image_info,image,"dpx:film.format",exception); in WriteCINImage()
1171 offset+=WriteBlob(image,sizeof(cin.film.format),(unsigned char *) in WriteCINImage()
1174 value=GetCINProperty(image_info,image,"dpx:film.frame_position",exception); in WriteCINImage()
1177 offset+=WriteBlobLong(image,(unsigned int) cin.film.frame_position); in WriteCINImage()
1179 value=GetCINProperty(image_info,image,"dpx:film.frame_rate",exception); in WriteCINImage()
1182 offset+=WriteBlobFloat(image,cin.film.frame_rate); in WriteCINImage()
1183 value=GetCINProperty(image_info,image,"dpx:film.frame_id",exception); in WriteCINImage()
1186 offset+=WriteBlob(image,sizeof(cin.film.frame_id),(unsigned char *) in WriteCINImage()
1188 value=GetCINProperty(image_info,image,"dpx:film.slate_info",exception); in WriteCINImage()
1192 offset+=WriteBlob(image,sizeof(cin.film.slate_info),(unsigned char *) in WriteCINImage()
1194 offset+=WriteBlob(image,sizeof(cin.film.reserve),(unsigned char *) in WriteCINImage()
1197 offset+=WriteBlob(image,GetStringInfoLength(profile), in WriteCINImage()
1200 offset+=WriteBlobByte(image,0x00); in WriteCINImage()
1202 Convert pixel packets to CIN raster image. in WriteCINImage()
1204 quantum_info=AcquireQuantumInfo(image_info,image); in WriteCINImage()
1211 length=GetBytesPerRow(image->columns,3,image->depth,MagickTrue); in WriteCINImage()
1212 for (y=0; y < (ssize_t) image->rows; y++) in WriteCINImage()
1214 p=GetVirtualPixels(image,0,y,image->columns,1,exception); in WriteCINImage()
1217 (void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info, in WriteCINImage()
1219 count=WriteBlob(image,length,pixels); in WriteCINImage()
1222 status=SetImageProgress(image,SaveImageTag,(MagickOffsetType) y, in WriteCINImage()
1223 image->rows); in WriteCINImage()
1228 (void) CloseBlob(image); in WriteCINImage()