Main Content

matlab.io.datastore.FileWritable クラス

名前空間: matlab.io.datastore

ファイルの書き込みサポートをデータストアに追加する

R2020a 以降

説明

matlab.io.datastore.FileWritable は、writeall メソッドのサポートを追加することで、ファイルの書き込みサポートをカスタム データストアに追加する抽象 mixin クラスです。

この mixin クラスを使用するには、matlab.io.datastore.FileWritable クラスおよび matlab.io.Datastore 基底クラスから継承しなければなりません。次の構文をクラス定義ファイル内の最初の数行として使用します。

classdef MyDatastore < matlab.io.Datastore & ....
                       matlab.io.datastore.FileWritable
  ...
end
カスタム データストアにファイルの書き込みサポートを追加するには、次の要件に従わなければなりません。

  • 追加のクラス matlab.io.datastore.FileWritable から継承します。

  • SupportedOutputFormats プロパティおよび DefaultOutputFormat プロパティを初期化する。

  • データストアがデータをカスタム形式に書き込む場合は write メソッドを実装する。

  • データストアに Files プロパティがない場合は getFiles メソッドを実装する。

  • データストアに Folders プロパティがない場合は getFolders メソッドを実装する。

  • 出力する場所が string として検証される。データストアの検証がさらに必要な場合は validateOutputLocation メソッドを実装しなければなりません。

  • データストアが、ファイルごとに複数の読み取りを必要とするファイル用の場合は、getCurrentFilename メソッドおよび currentFileIndexComparator メソッドを実装しなければならない。

  • オプションで、別の matlab.io.datastore.FoldersPropertyProvider クラスから継承して、Folders プロパティ (および writeallFolderLayout の名前と値のペア) のサポートを追加する。これを行う場合、データストア コンストラクターで populateFoldersFromLocation メソッドを使用して、Folders プロパティを入力できる。

  • writeall'UseParallel' オプションのサポートを追加するには、matlab.io.datastore.FileWritablematlab.io.datastore.Partitionable の両方からサブクラス化し、サブクラスに構文 partition(ds,'Files',index) をサポートする partition メソッドを実装しなければならない。

matlab.io.datastore.FileWritable クラスは handle クラスです。

プロパティ

すべて展開する

書き込み可能な形式のリスト。string ベクトルとして返されます。このプロパティには、writeall で使用できる可能なすべての出力形式がリストされます。サブクラスでこのプロパティを初期化する例については、カスタム データストアのプロパティを初期化するを参照してください。

属性:

GetAccess
public
SetAccess
public
Constant
true
抽象型
true

データ型: string

既定の出力形式。string スカラーとして返されます。このプロパティは、none が指定されている場合に、writeall で使用する出力形式を示します。サブクラスでこのプロパティを初期化する例については、カスタム データストアのプロパティを初期化するを参照してください。

属性:

GetAccess
public
SetAccess
public
Constant
true
抽象型
true

データ型: string

メソッド

すべて展開する

すべて折りたたむ

ファイルの書き込み機能を追加するために matlab.io.datastore.FileWritable からサブクラス化するカスタム データストア クラスを作成する場合は、サブクラスでプロパティ SupportedOutputFormatsDefaultOutputFormat を初期化しなければなりません。

たとえば、DICOM データ用のカスタム データストアの開発のサブクラスでは、次のプロパティが初期化されます。

properties (Constant)
  SupportedOutputFormats = ...
    [matlab.io.datastore.ImageDatastore.SupportedOutputFormats, "dcm"];
  DefaultOutputFormat = "dcm";
end

"dcm" は、既定にも設定されているカスタム形式ですが、データストアは、ImageDatastore のサポートされるすべての出力形式もサポートします。

バージョン履歴

R2020a で導入