636 : _channels()
637{
638 MagickCore::ChannelStatistics*
639 channel_statistics;
640
641 GetPPException;
642 channel_statistics=GetImageStatistics(image_.constImage(),exceptionInfo);
643 if (channel_statistics != (MagickCore::ChannelStatistics *) NULL)
644 {
645 ssize_t
646 i;
647
648 for (i=0; i < (ssize_t) GetPixelChannels(image_.constImage()); i++)
649 {
650 PixelChannel channel=GetPixelChannelChannel(image_.constImage(),i);
651 PixelTrait traits=GetPixelChannelTraits(image_.constImage(),channel);
652 if (traits == UndefinedPixelTrait)
653 continue;
654 if ((traits & UpdatePixelTrait) == 0)
655 continue;
656 _channels.push_back(Magick::ChannelStatistics(channel,
657 &channel_statistics[channel]));
658 }
659 _channels.push_back(Magick::ChannelStatistics(CompositePixelChannel,
660 &channel_statistics[CompositePixelChannel]));
661 channel_statistics=(MagickCore::ChannelStatistics *) RelinquishMagickMemory(
662 channel_statistics);
663 }
664 ThrowPPException(image_.quiet());
665}