DCAMprop DLL

Version 1.41においてスペシャルDCAM プロパティへのアクセスを提供していたDCAM Prop DLL は必要なくなり、新しい VCDプロパティ技術関連項目>VCDプロパティを使ってスペシャルプロパティにアクセスし制御することができます。ここではそれらDCAM Prop DLLの関数やプロシージャの代わりとなるものに関して説明します。

IsPhysicalUnits%%%, SetPhysicalUnits%%%

もし、物理単位機能がプロパティ%%%において支援されていれば,  VCD プロパティはマップストリングインターフェース ( VCDMapStringsPropertyクラスライブラリリファレンス>クラス>VCDMapStringsProperty )を提供します。特定のデバイスには特別にドライバをセットアップして物理単位機能 をサポートできるようにすることも必要かもしれません。 詳細についてはデバイスのマニュアルをご参照ください。絶対値インターフェース ( VCDAbsoluteValuePropertyクラスライブラリリファレンス>クラス>VCDAbsoluteValueProperty )という新しいインターフェースが 使用できるようになっており、これはマップストリングインターフェースの物理単位機能のように値に意味を持たせるものです。また高い解像度にも対応しています。 サポートしているのであれば絶対値インターフェースを使用することが推奨されます。

IsWhiteBalance%%%, GetWhiteBalace%%%, SetWhiteBalance%%%

基本的にこれらの関数を扱うのには2つ方法があります。ひとつは VCDSimplePropertyクラスライブラリリファレンス>クラス>VCDSimpleProperty クラスを利用することです。このクラスの使い方に関しては ユーザーズガイドのUsing the VCD Simple Property Classプログラマーズガイド>VCDSimplePropertyを使用する において説明しています。そのヘルパークラスはプロパティ値の設定、呼び出しをするためのメソッドと特定のプロパティが利用可能かどうかをチェックするメソッドを提供します。このヘルパークラスのメソッドには全てプロパティを特定するためのIDが必要となります。
"WhiteBalanceBlue" や "WhiteBalanceRed"のIDはそれぞれVCDElement_WhiteBalanceBlueVCDElement_WhiteBalanceRedとなります。これについての詳細はVCDSimplePropertyクラスライブラリリファレンス>クラス>VCDSimpleProperty クラスを参照ください。
もう一つの方法は新しい VCDプロパティを直接使うことです。ユーザーズガイドのVCDプロパティの基本機能プログラマーズガイド>VCD Propertiesの基本的な使用法VCDプロパティの一覧を表示させるプログラマーズガイド>VCD Propertiesの一覧を表示させる にてその詳細を説明しています。新しいVCDプロパティを使う際には、それらがどのように構成されているのかを理解することが重要となります。VCDPropertyItemクラスライブラリリファレンス>クラス>VCDPropertyItems、VCDPropertyElementクラスライブラリリファレンス>クラス>VCDPropertyElements 、 VCDPropertyInterfaceクラスライブラリリファレンス>クラス>VCDPropertyInterfacesというそれぞれのアイテムが1つ以上のエレメント(要素)を持ち、そしてそのエレメントは1つ以上のインターフェースを持っています。そのインターフェースは関連するプロパティ要素の変更を可能にします。"WhiteBalance%%%"が使えるかどうかを確認するためには、VCDID_WhiteBalance + ":" + VCDElement_WhiteBalance%%% をパラメータとして VCDPropertyItems.FindElementクラスライブラリリファレンス>クラス>VCDPropertyItems>VCDPropertyItems.FindElement Method メソッドを 使います。VCDID_WhiteBalanceはプロパティ項目を表し、VCDElement_WhiteBalance%%%はエレメント "WhiteBalanceRed" もしくは"WhiteBalanceBlue"を表します。もしそのプロパティがサポートされているのであれば戻り値は各要素を返します。そうでない場合には、Nothingが返されます。
"WhiteBalance%%%"を取得もしくは設定する場合、VCDPropertyItems.FindInterfaceクラスライブラリリファレンス>クラス>VCDPropertyItems>VCDPropertyItems.FindInterface MethodVCDPropertyElement.FindInterfaceクラスライブラリリファレンス>クラス>VCDPropertyElement>VCDPropertyElement.FindInterface MethodVCDPropertyElements.FindInterfaceクラスライブラリリファレンス>クラス>VCDPropertyElements>VCDPropertyElements.FindInterface Method のいずれかのメソッドで適切なインターフェースを取得してください。そうすればそれのメソッドを使ってプロパティの調整ができるようになります。詳細は VCDPropertyInterfaceクラスライブラリリファレンス>クラス>VCDPropertyInterfaceをご覧ください。

[VB.NET]
' レンジインターフェースの宣言
Dim Range As ICImagingControl.VCDRangeProperty

' WhiteBalanceRed用のレンジインターフェースの呼び出し
Range = ICImagingControl1.VCDPropertyItems.FindInterface( VCDHelpers.VCDIDs.VCDID_WhiteBalance + ":" + _
                                                 VCDHelpers.VCDIDs.VCDElement_WhiteBalanceRed + ":"  + _
                                                 VCDHelpers.VCDIDs.VCDInterface_Range )

' WhiteBalanceRedプロパティの値でスライダーsldWhiteBalanceRedを初期化
     sldWhiteBalanceRed.Minimum = Range.RangeMin
     sldWhiteBalanceRed.Maximum = Range.RangeMax
     sldWhiteBalanceRed.Value = Range.Value
     sldWhiteBalanceRed.Enabled = True
Else
     sldWhiteBalanceRed.Enabled = False
End If
[C#]
// レンジインターフェースの宣言
private ICImagingControl.VCDRangeProperty Range;

// WhiteBalanceRed用のレンジインターフェースの呼び出し
Range = (ICImagingControl.VCDRangeProperty)IcImagingControl1.VCDPropertyItems.FindInterface(
                                                VCDHelpers.VCDIDs.VCDID_WhiteBalance + ":"  +
                                                VCDHelpers.VCDIDs.VCDElement_WhiteBalanceRed + ":"  +
                                                VCDHelpers.VCDIDs.VCDInterface_Range );

// WhiteBalanceRedプロパティの値でスライダーsldWhiteBalanceRedを初期化
  if ( Range != null )
{
     sldWhiteBalanceRed.Minimum = Range.RangeMin
     sldWhiteBalanceRed.Maximum = Range.RangeMax
     sldWhiteBalanceRed.Value = Range.Value
     sldWhiteBalanceRed.Enabled = True
}
else
{
     sldWhiteBalanceRed.Enabled = False
}

IsHorizontalFlipAvailable, GetHorizontalFlip, SetHorizontalFlip