ailia  1.5.0.0
公開メンバ関数 | 限定公開メンバ関数 | 限定公開変数類 | プロパティ | 全メンバ一覧
ailia.AiliaModel クラス
ailia.AiliaModel の継承関係図
Inheritance graph
[凡例]
ailia.AiliaModel 連携図
Collaboration graph
[凡例]

公開メンバ関数

bool Environment (int type)
 指定した種類の計算環境を選択します。 [詳解]
 
string EnvironmentName ()
 選択された環境名を表示します。 [詳解]
 
int GetEnvironmentCount ()
 利用可能な計算環境(CPU, GPU)の数を取得します。 [詳解]
 
Ailia.AILIAEnvironment GetEnvironment (int idx)
 指定したインデックスの計算環境を取得します。 [詳解]
 
bool SelectEnvironment (int idx)
 計算環境を選択します。 [詳解]
 
Ailia.AILIAEnvironment GetSelectedEnvironment ()
 選択された計算環境を取得します。 [詳解]
 
void SetMemoryMode (uint set_memory_mode)
 メモリモードを設定します [詳解]
 
void DisableLayerFusion ()
 レイヤー統合による高速化を無効化します。 [詳解]
 
virtual bool OpenFile (string prototxt_path, string model_path)
 モデルファイルからネットワークオブジェクトを作成します。 [詳解]
 
virtual bool OpenMem (byte[] prototxt_buf, byte[] model_buf)
 メモリからネットワークオブジェクトを作成します。 [詳解]
 
virtual bool OpenEx (Ailia.ailiaFileCallback callback, IntPtr arg1, IntPtr arg2)
 ファイルコールバックからネットワークオブジェクトを作成します。 [詳解]
 
bool Predict (float[] output_data, float[] input_data)
 推論を行い推論結果を取得します。 [詳解]
 
Ailia.AILIAShape GetInputShape ()
 推論時の入力データの形状を取得します。 [詳解]
 
uint[] GetInputShapeND ()
 推論時の入力データの形状を取得します。 [詳解]
 
bool SetInputShape (Ailia.AILIAShape shape)
 推論時の入力データの形状を設定します。 [詳解]
 
bool SetInputShapeND (uint[] shape, int dim)
 推論時の入力データの形状を変更します。 [詳解]
 
Ailia.AILIAShape GetOutputShape ()
 推論時の出力データの形状を取得します。 [詳解]
 
uint[] GetOutputShapeND ()
 推論時の出力データの形状を取得します。 [詳解]
 
Ailia.AILIAShape GetBlobShape (string layer_name)
 推論時の内部データ(Blob)の形状(レイヤー形式)を取得します。(Obsolete) [詳解]
 
int FindBlobIndexByName (string name)
 推論時の内部データ(Blob)のインデックスを名前で探し取得します。 [詳解]
 
Ailia.AILIAShape GetBlobShape (uint idx)
 推論時の内部データ(Blob)の形状(レイヤー形式)を取得します。 [詳解]
 
Ailia.AILIAShape GetBlobShape (int idx)
 
bool GetBlobData (float[] output_data, uint idx)
 推論時の内部データ(Blob)を取得します。 [詳解]
 
bool GetBlobData (float[] output_data, int idx)
 
bool SetInputBlobData (float[] input_data, uint idx)
 指定したBlobに入力データを設定します。 [詳解]
 
bool SetInputBlobData (float[] input_data, int idx)
 
bool SetInputBlobShape (Ailia.AILIAShape shape, uint idx)
 指定した入力データ(Blob)の形式を設定します。(4次元以下) [詳解]
 
bool SetInputBlobShape (Ailia.AILIAShape shape, int idx)
 
bool SetInputBlobShapeND (uint[] shape, uint dim, uint idx)
 入力データ(Blob)の形式を設定します。(5次元以上) [詳解]
 
bool SetInputBlobShapeND (uint[] shape, int dim, int idx)
 
uint[] GetInputBlobList ()
 入力データ(Blob)のインデックスのリストを取得します。 [詳解]
 
uint[] GetOutputBlobList ()
 出力データ(Blob)のインデックスのリストを取得します。 [詳解]
 
bool CopyBlobData (uint dst_blob_idx, uint src_blob_idx, AiliaModel src_model=null)
 指定したBlob間でデータをコピーします [詳解]
 
bool Update ()
 事前に入力したデータで推論を行います。 [詳解]
 
virtual void Close ()
 ネットワークオブジェクトを破棄します。 [詳解]
 
virtual void Dispose ()
 リソースを解放します。 [詳解]
 
string GetStatusString (int status)
 ステータスコードに対応する文字列を返します。 [詳解]
 
string GetErrorDetail ()
 エラーの詳細を返します。 [詳解]
 
bool SetProfileMode (uint profile_mode)
 プロファイルモードを有効にします。 [詳解]
 
string GetSummary ()
 ネットワーク情報およびプロファイル結果を取得します。 [詳解]
 

限定公開メンバ関数

virtual void Dispose (bool disposing)
 

限定公開変数類

IntPtr ailia = IntPtr.Zero
 
bool logging = true
 

プロパティ

int Status [get, protected set]
 ステータスコード @detail ライブラリのステータスコードを取得します。 [詳解]
 

関数詳解

◆ Close()

virtual void ailia.AiliaModel.Close ( )
inlinevirtual

ネットワークオブジェクトを破棄します。

ネットワークオブジェクトを破棄し、初期化します。

ailia.AiliaPoseEstimatorModel, ailia.AiliaFeatureExtractorModel, ailia.AiliaDetectorModel, ailia.AiliaClassifierModelで再実装されています。

1529  {
1530  if (ailia != IntPtr.Zero)
1531  {
1532  Ailia.ailiaDestroy(ailia);
1533  ailia = IntPtr.Zero;
1534  }
1535  }
Definition: AiliaClassifierModel.cs:22

◆ CopyBlobData()

bool ailia.AiliaModel.CopyBlobData ( uint  dst_blob_idx,
uint  src_blob_idx,
AiliaModel  src_model = null 
)
inline

指定したBlob間でデータをコピーします

引数
dst_blob_idxコピー先のblobのインデックス
src_blob_idxコピー元のblobのインデックス
src_modelコピー元Blobが含まれるモデルオブジェクト nullを指定した場合 現在のモデルオブジェクト内でBlobをコピーします。
戻り値
成功した場合は true 、失敗した場合は false を返します。
1459  {
1460  IntPtr src_ailia = ailia;
1461  if (src_model != null) src_ailia = src_model.ailia;
1462  if (ailia == IntPtr.Zero || src_ailia == IntPtr.Zero) return false;
1463 
1464  int status = Status = Ailia.ailiaCopyBlobData(ailia, dst_blob_idx, src_ailia, src_blob_idx);
1465  if (status != Ailia.AILIA_STATUS_SUCCESS)
1466  {
1467  if (logging)
1468  {
1469  Debug.Log("ailiaUpdate failed " + status + " (" + GetStatusString(status) + ")");
1470  }
1471  return false;
1472  }
1473  return true;
1474  }
IntPtr ailia
Definition: AiliaModel.cs:25
string GetStatusString(int status)
ステータスコードに対応する文字列を返します。
Definition: AiliaModel.cs:1581
int Status
ステータスコード @detail ライブラリのステータスコードを取得します。
Definition: AiliaModel.cs:1619
bool logging
Definition: AiliaModel.cs:33

◆ DisableLayerFusion()

void ailia.AiliaModel.DisableLayerFusion ( )
inline

レイヤー統合による高速化を無効化します。

レイヤー統合による高速化を無効化します。デフォルトは有効です。

358  {
359  disalbe_layer_fusion = true;
360  }

◆ Dispose() [1/2]

virtual void ailia.AiliaModel.Dispose ( )
inlinevirtual

リソースを解放します。

ailia.AiliaPoseEstimatorModel, ailia.AiliaFeatureExtractorModel, ailia.AiliaDetectorModel, ailia.AiliaClassifierModelで再実装されています。

1545  {
1546  Dispose(true);
1547  }
virtual void Dispose()
リソースを解放します。
Definition: AiliaModel.cs:1544

◆ Dispose() [2/2]

virtual void ailia.AiliaModel.Dispose ( bool  disposing)
inlineprotectedvirtual

ailia.AiliaPoseEstimatorModel, ailia.AiliaFeatureExtractorModel, ailia.AiliaDetectorModel, ailia.AiliaClassifierModelで再実装されています。

1550  {
1551  if (disposing){
1552  // release managed resource
1553  }
1554  Close(); // release unmanaged resource
1555  }
virtual void Close()
ネットワークオブジェクトを破棄します。
Definition: AiliaModel.cs:1528

◆ Environment()

bool ailia.AiliaModel.Environment ( int  type)
inline

指定した種類の計算環境を選択します。

環境選択(簡易)

引数
type環境の種別( AILIA_ENVIRONMENT_TYPE_CPU or BLAS or GPU)
戻り値
成功した場合 true を、失敗した場合は false を返す。

簡易的に環境種別から計算環境を選択します。 明示的に計算環境を指定する場合は、GetEnvironmentCount()、GetEnvironment()、SelectEnvironment()を使用してください。

57  {
58  int count = GetEnvironmentCount();
59  if (count == -1)
60  {
61  return false;
62  }
63 
64  for (int i = 0; i < count; i++)
65  {
66  Ailia.AILIAEnvironment env = GetEnvironment(i);
67  if (env == null)
68  {
69  return false;
70  }
71 
72  if (env.type == type)
73  {
74  if (!SelectEnvironment(i))
75  {
76  return false;
77  }
78  if (env.backend == Ailia.AILIA_ENVIRONMENT_BACKEND_CUDA || env.backend == Ailia.AILIA_ENVIRONMENT_BACKEND_VULKAN)
79  {
80  return true; //優先
81  }
82  }
83  }
84  return true;
85  }
Ailia.AILIAEnvironment GetEnvironment(int idx)
指定したインデックスの計算環境を取得します。
Definition: AiliaModel.cs:157
bool SelectEnvironment(int idx)
計算環境を選択します。
Definition: AiliaModel.cs:194
int GetEnvironmentCount()
利用可能な計算環境(CPU, GPU)の数を取得します。
Definition: AiliaModel.cs:124

◆ EnvironmentName()

string ailia.AiliaModel.EnvironmentName ( )
inline

選択された環境名を表示します。

戻り値
選択された環境名

選択された環境名を返します。

103  {
104  return env_name;
105  }

◆ FindBlobIndexByName()

int ailia.AiliaModel.FindBlobIndexByName ( string  name)
inline

推論時の内部データ(Blob)のインデックスを名前で探し取得します。

引数
layer_name検索するBlob名
戻り値
成功した場合は 名前で指定したBlobのインデックスを 、そうでなければ -1 を返す。

Ailia.ailiaFindBlobIndexByName() で推論時の内部データ(Blob)のインデックスを名前で探し取得します。

1040  {
1041  uint idx = 0;
1042  int status = Status = Ailia.ailiaFindBlobIndexByName(ailia, ref idx, name);
1043  if (status != Ailia.AILIA_STATUS_SUCCESS)
1044  {
1045  if (logging)
1046  {
1047  Debug.Log("FindBlobIndexByName failed " + status + " (" + GetStatusString(status) + ")");
1048  }
1049  return -1;
1050  }
1051  return (int)idx;
1052  }

◆ GetBlobData() [1/2]

public bool ailia.AiliaModel.GetBlobData ( float[]  output_data,
int  idx 
)
inline

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

1160  {
1161  if (idx < 0)
1162  {
1163  return false;
1164  }
1165  return GetBlobData(output_data, (uint)idx);
1166  }
bool GetBlobData(float[] output_data, uint idx)
推論時の内部データ(Blob)を取得します。
Definition: AiliaModel.cs:1129

◆ GetBlobData() [2/2]

bool ailia.AiliaModel.GetBlobData ( float[]  output_data,
uint  idx 
)
inline

推論時の内部データ(Blob)を取得します。

引数
output_data推論結果の書き出し先
idxBlobのインデックス (0~ ailiaGetBlobCount() -1)
戻り値
成功した場合は true を、失敗した場合は false を返す。

Ailia.ailiaGetBlobData() で推論時の内部データ(Blob)を取得します。 推論を一度も実行していない場合は失敗します。

1130  {
1131  if (ailia == IntPtr.Zero)
1132  {
1133  return false;
1134  }
1135 
1136  GCHandle output_buf_handle = GCHandle.Alloc(output_data, GCHandleType.Pinned);
1137  IntPtr output_buf_ptr = output_buf_handle.AddrOfPinnedObject();
1138  int status = Status = Ailia.ailiaGetBlobData(ailia, output_buf_ptr, (uint)(output_data.Length * 4), idx);
1139  output_buf_handle.Free();
1140 
1141  if (status != Ailia.AILIA_STATUS_SUCCESS)
1142  {
1143  if (logging)
1144  {
1145  Debug.Log("ailiaGetBlobData failed " + status + " (" + GetStatusString(status) + ")");
1146  }
1147  return false;
1148  }
1149  return true;
1150  }

◆ GetBlobShape() [1/3]

public Ailia AILIAShape ailia.AiliaModel.GetBlobShape ( int  idx)
inline

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

1100  {
1101  if (idx < 0)
1102  {
1103  return null;
1104  }
1105  return GetBlobShape((uint)idx);
1106  }
Ailia.AILIAShape GetBlobShape(string layer_name)
推論時の内部データ(Blob)の形状(レイヤー形式)を取得します。(Obsolete)
Definition: AiliaModel.cs:993

◆ GetBlobShape() [2/3]

Ailia.AILIAShape ailia.AiliaModel.GetBlobShape ( string  layer_name)
inline

推論時の内部データ(Blob)の形状(レイヤー形式)を取得します。(Obsolete)

引数
layer_name検索するBlob名
戻り値
成功した場合は名前で指定したBlobの形状を、そうでなければ null を返す。

Ailia.ailiaFindBlobIndexByName() でBlob名からBlobのインデックスを取得します。 Ailia.ailiaGetBlobShape() で推論時の内部データ(Blob)の形状(レイヤー形式)を取得し shape に格納します。

994  {
995  if (ailia == IntPtr.Zero)
996  {
997  return null;
998  }
999  Ailia.AILIAShape shape = new Ailia.AILIAShape();
1000  uint id = 0;
1001  int status = Status = Ailia.ailiaFindBlobIndexByName(ailia, ref id, layer_name);
1002  if (status != Ailia.AILIA_STATUS_SUCCESS)
1003  {
1004  if (logging)
1005  {
1006  Debug.Log("ailiaFindBlobIndexByName failed " + status + " (" + GetStatusString(status) + ")");
1007  }
1008  return null;
1009  }
1010  status = Status = Ailia.ailiaGetBlobShape(ailia, shape, id, Ailia.AILIA_SHAPE_VERSION);
1011  if (status != Ailia.AILIA_STATUS_SUCCESS)
1012  {
1013  if (logging)
1014  {
1015  Debug.Log("ailiaGetBlobShape failed " + status + " (" + GetStatusString(status) + ")");
1016  }
1017  return null;
1018  }
1019  return shape;
1020  }

◆ GetBlobShape() [3/3]

Ailia.AILIAShape ailia.AiliaModel.GetBlobShape ( uint  idx)
inline

推論時の内部データ(Blob)の形状(レイヤー形式)を取得します。

引数
idxBlobのインデックス
戻り値
成功した場合は名前で指定したBlobの形状を、そうでなければ null を返す。

Ailia.ailiaGetBlobShape() で推論時の内部データ(Blob)の形状(レイヤー形式)を取得し shape に格納します。

1073  {
1074  if (ailia == IntPtr.Zero)
1075  {
1076  return null;
1077  }
1078 
1079  Ailia.AILIAShape shape = new Ailia.AILIAShape();
1080  int status = Status = Ailia.ailiaGetBlobShape(ailia, shape, idx, Ailia.AILIA_SHAPE_VERSION);
1081  if (status != Ailia.AILIA_STATUS_SUCCESS)
1082  {
1083  if (logging)
1084  {
1085  Debug.Log("ailiaGetBlobShape failed " + status + " (" + GetStatusString(status) + ")");
1086  }
1087  return null;
1088  }
1089  return shape;
1090  }

◆ GetEnvironment()

Ailia.AILIAEnvironment ailia.AiliaModel.GetEnvironment ( int  idx)
inline

指定したインデックスの計算環境を取得します。

引数
idx環境情報のインデックス(0~ ailiaGetEnvironmentCount() -1)
戻り値
成功した場合は利用可能な環境を、失敗した場合は null を返す。

指定した計算環境の詳細情報を取得します。

158  {
159  IntPtr env_ptr = IntPtr.Zero;
160  int status = Status = Ailia.ailiaGetEnvironment(ref env_ptr, (uint)idx, Ailia.AILIA_ENVIRONMENT_VERSION);
161  if (status != Ailia.AILIA_STATUS_SUCCESS)
162  {
163  if (logging)
164  {
165  Debug.Log("ailiaGetEnvironment failed " + status + " (" + GetStatusString(status) + ")");
166  }
167  return null;
168  }
169  Ailia.AILIAEnvironment env = (Ailia.AILIAEnvironment)Marshal.PtrToStructure(env_ptr, typeof(Ailia.AILIAEnvironment));
170  if (logging)
171  {
172  //Debug.Log("ENV id:"+env.id+", name:"+Marshal.PtrToStringAnsi(env.name)+", type:"+env.type);
173  }
174  return env;
175  }

◆ GetEnvironmentCount()

int ailia.AiliaModel.GetEnvironmentCount ( )
inline

利用可能な計算環境(CPU, GPU)の数を取得します。

環境選択(詳細)

戻り値
成功した場合は利用可能な環境の数を、失敗した場合は-1を返す。 

利用可能な環境の数を取得します。

125  {
126  SetTemporaryCachePath();
127  int count = 0;
128  int status = Status = Ailia.ailiaGetEnvironmentCount(ref count);
129  if (status != Ailia.AILIA_STATUS_SUCCESS)
130  {
131  if (logging)
132  {
133  Debug.Log("ailiaGetEnvironmentCount failed " + status + " (" + GetStatusString(status) + ")");
134  }
135  return -1;
136  }
137  return count;
138  }

◆ GetErrorDetail()

string ailia.AiliaModel.GetErrorDetail ( )
inline

エラーの詳細を返します。

戻り値
成功した場合はエラー詳細の文字列を返します。 @detail エラー詳細を文字列として返します。
1603  {
1604  return Marshal.PtrToStringAnsi(Ailia.ailiaGetErrorDetail(ailia));
1605  }

◆ GetInputBlobList()

uint [] ailia.AiliaModel.GetInputBlobList ( )
inline

入力データ(Blob)のインデックスのリストを取得します。

戻り値
成功した場合は入力データ(Blob)のリストを、失敗した場合は null を返します。 @detail Ailia.ailiaGetInputBlobCount()で入力データ(Blob)の数をcountとして取得します。 Ailia.ailiaGetBlobIndexByInputIndex()でBlobのインデックスをidxとして取得し、リストを作成します。
1367  {
1368  if (ailia == IntPtr.Zero)
1369  {
1370  return null;
1371  }
1372 
1373  uint count = 0;
1374  int status = Status = Ailia.ailiaGetInputBlobCount(ailia, ref count);
1375  if (status != Ailia.AILIA_STATUS_SUCCESS || count == 0)
1376  {
1377  return null;
1378  }
1379 
1380  uint[] r = new uint[count];
1381  for (uint i = 0; i < count; i++)
1382  {
1383  uint idx = 0;
1384  status = Status = Ailia.ailiaGetBlobIndexByInputIndex(ailia, ref idx, i);
1385  if (status != Ailia.AILIA_STATUS_SUCCESS)
1386  {
1387  break;
1388  }
1389  r[i] = idx;
1390  }
1391 
1392  return r;
1393  }

◆ GetInputShape()

Ailia.AILIAShape ailia.AiliaModel.GetInputShape ( )
inline

推論時の入力データの形状を取得します。

戻り値
成功した場合、入力データの各次元の大きさが格納された配列 shape それ以外の場合はnullを返す。 @detail AILIAクラスのailiaGetInputShape()メソッドを用いて、推論時の入力データの形状を取得します。 形状が5次元以上の場合は GetInputShapeND() を利用してください。 形状の一部が未確定の場合、該当する次元の値は0となり、それ以外の次元の値は有効な値が shape に格納されます。 失敗した場合には、それに応じたエラーメッセージが表示されます。

Obtains the shape of the input data at the time of inference.

戻り値
If successful, an array containing the size of each dimension of the input data shape Otherwise, null is returned. @detail The ailiaGetInputShape() method of the AILIA class is used to obtain the shape of the input data during inference. If the shape has more than 5 dimensions, use GetInputShapeND(). If a part of the shape is not yet determined, the value of the corresponding dimension is set to 0, and valid values for the other dimensions are stored in shape. In case of failure, a corresponding error message will be displayed.
740  {
741  Ailia.AILIAShape shape = new Ailia.AILIAShape();
742  int status = Status = Ailia.ailiaGetInputShape(ailia, shape, Ailia.AILIA_SHAPE_VERSION);
743  if (status != Ailia.AILIA_STATUS_SUCCESS)
744  {
745  if (logging)
746  {
747  Debug.Log("ailiaGetInputShape failed " + status + " (" + GetStatusString(status) + ")");
748  }
749  return null;
750  }
751  return shape;
752  }

◆ GetInputShapeND()

uint [] ailia.AiliaModel.GetInputShapeND ( )
inline

推論時の入力データの形状を取得します。

戻り値
成功した場合、入力データの各次元の大きさが格納された配列 shape それ以外の場合はnullを返す。 @detail AILIA.ailiaGetInputDim() を用いて、推論時の入力データの次元を取得します。 AILIA.ailiaGetInputShapeND() を用いて、推論時の入力データの形状を取得します。 形状が5次元以上の場合は GetInputShapeND() を利用してください。 形状の一部が未確定の場合、該当する次元の値は0となり、それ以外の次元の値は有効な値が shape に格納されます。 失敗した場合には、それに応じたエラーメッセージが表示されます。
779  {
780  uint dim = 0;
781  int status = Status = Ailia.ailiaGetInputDim(ailia, ref dim);
782  if (status != Ailia.AILIA_STATUS_SUCCESS)
783  {
784  if (logging)
785  {
786  Debug.Log("ailiaGetInputDim failed " + status + " (" + GetStatusString(status) + ")");
787  }
788  return null;
789  }
790  uint[] shape = new uint[dim];
791  status = Status = Ailia.ailiaGetInputShapeND(ailia, shape, dim);
792  if (status != Ailia.AILIA_STATUS_SUCCESS)
793  {
794  if (logging)
795  {
796  Debug.Log("ailiaGetInputShapeND failed " + status + " (" + GetStatusString(status) + ")");
797  }
798  return null;
799  }
800  return shape;
801  }

◆ GetOutputBlobList()

uint [] ailia.AiliaModel.GetOutputBlobList ( )
inline

出力データ(Blob)のインデックスのリストを取得します。

戻り値
成功した場合は入力データ(Blob)のリストを、失敗した場合は null を返します。 @detail Ailia.ailiaGetInputBlobCount()で出力データ(Blob)の数をcountとして取得します。 Ailia.ailiaGetBlobIndexByInputIndex()でBlobのインデックスをidxとして取得し、リストを作成します。
1413  {
1414  if (ailia == IntPtr.Zero)
1415  {
1416  return null;
1417  }
1418 
1419  uint count = 0;
1420  int status = Status = Ailia.ailiaGetOutputBlobCount(ailia, ref count);
1421  if (status != Ailia.AILIA_STATUS_SUCCESS || count == 0)
1422  {
1423  return null;
1424  }
1425 
1426  uint[] r = new uint[count];
1427  for (uint i = 0; i < count; i++)
1428  {
1429  uint idx = 0;
1430  status = Status = Ailia.ailiaGetBlobIndexByOutputIndex(ailia, ref idx, i);
1431  if (status != Ailia.AILIA_STATUS_SUCCESS)
1432  {
1433  break;
1434  }
1435  r[i] = idx;
1436  }
1437  return r;
1438  }

◆ GetOutputShape()

Ailia.AILIAShape ailia.AiliaModel.GetOutputShape ( )
inline

推論時の出力データの形状を取得します。

戻り値
成功した場合は shape 、そうでなければ null を返す。

Ailia.ailiaGetOutputShape() で推論時の出力データの形状を取得します。 形状が5次元以上の場合は GetOutputShapeND() を利用してください。

912  {
913  if (ailia == IntPtr.Zero)
914  {
915  return null;
916  }
917  Ailia.AILIAShape shape = new Ailia.AILIAShape();
918  int status = Status = Ailia.ailiaGetOutputShape(ailia, shape, Ailia.AILIA_SHAPE_VERSION);
919  if (status != Ailia.AILIA_STATUS_SUCCESS)
920  {
921  if (logging)
922  {
923  Debug.Log("ailiaGetOutputShape failed " + status + " (" + GetStatusString(status) + ")");
924  }
925  return null;
926  }
927  return shape;
928  }

◆ GetOutputShapeND()

uint [] ailia.AiliaModel.GetOutputShapeND ( )
inline

推論時の出力データの形状を取得します。

戻り値
成功した場合は shape 、そうでなければ null を返す。

ailiaGetOutputDim() で推論時の出力データの次元を取得します。 Ailia.ailiaGetOutputShapeND() で推論時の出力データの形状を取得します。

948  {
949  uint dim = 0;
950  int status = Status = Ailia.ailiaGetOutputDim(ailia, ref dim);
951  if (status != Ailia.AILIA_STATUS_SUCCESS)
952  {
953  if (logging)
954  {
955  Debug.Log("ailiaGetOutputDim failed " + status + " (" + GetStatusString(status) + ")");
956  }
957  return null;
958  }
959  uint[] shape = new uint[dim];
960  status = Status = Ailia.ailiaGetOutputShapeND(ailia, shape, dim);
961  if (status != Ailia.AILIA_STATUS_SUCCESS)
962  {
963  if (logging)
964  {
965  Debug.Log("ailiaGetOutputShapeND failed " + status + " (" + GetStatusString(status) + ")");
966  }
967  return null;
968  }
969  return shape;
970  }

◆ GetSelectedEnvironment()

Ailia.AILIAEnvironment ailia.AiliaModel.GetSelectedEnvironment ( )
inline

選択された計算環境を取得します。

戻り値
成功した場合は計算環境情報を、失敗した場合は null を返す。

選択された計算環境の詳細情報を取得します。

222  {
223  IntPtr env_ptr = IntPtr.Zero;
224  int status = Status = Ailia.ailiaGetSelectedEnvironment(ailia, ref env_ptr, Ailia.AILIA_ENVIRONMENT_VERSION);
225  if (status != Ailia.AILIA_STATUS_SUCCESS)
226  {
227  if (logging)
228  {
229  Debug.Log("ailiaGetSelectedEnvironment failed " + status + " (" + GetStatusString(status) + ")");
230  }
231  return null;
232  }
233  Ailia.AILIAEnvironment env = (Ailia.AILIAEnvironment)Marshal.PtrToStructure(env_ptr, typeof(Ailia.AILIAEnvironment));
234  return env;
235  }

◆ GetStatusString()

string ailia.AiliaModel.GetStatusString ( int  status)
inline

ステータスコードに対応する文字列を返します。

引数
statusステータスコード
戻り値
成功した場合はエラー詳細の文字列を返します。 @detail ステータスコードに対応するエラー詳細を文字列として返します。
1582  {
1583  return Marshal.PtrToStringAnsi(Ailia.ailiaGetStatusString(status));
1584  }

◆ GetSummary()

string ailia.AiliaModel.GetSummary ( )
inline

ネットワーク情報およびプロファイル結果を取得します。

戻り値
成功した場合はネットワーク情報およびプロファイル結果を示すASCII文字列を、失敗した場合は null を返します。 @detail ネットワーク情報およびプロファイル結果を含む文字列を取得します。
1669  {
1670  uint buffer_size = 0;
1671  int status = Status = Ailia.ailiaGetSummaryLength(ailia, ref buffer_size);
1672  if (status != Ailia.AILIA_STATUS_SUCCESS)
1673  {
1674  if (logging)
1675  {
1676  Debug.Log("ailiaGetSummaryLength failed " + status + " (" + GetStatusString(status) + ")");
1677  }
1678  return null;
1679  }
1680  byte[] buffer = new byte[buffer_size];
1681  status = Status = Ailia.ailiaSummary(ailia, buffer, buffer_size);
1682  if (status != Ailia.AILIA_STATUS_SUCCESS)
1683  {
1684  if (logging)
1685  {
1686  Debug.Log("ailiaSummary failed " + status + " (" + GetStatusString(status) + ")");
1687  }
1688  return null;
1689  }
1690  return System.Text.Encoding.ASCII.GetString(buffer);
1691  }

◆ OpenEx()

virtual bool ailia.AiliaModel.OpenEx ( Ailia.ailiaFileCallback  callback,
IntPtr  arg1,
IntPtr  arg2 
)
inlinevirtual

ファイルコールバックからネットワークオブジェクトを作成します。

引数
callbackユーザ定義ファイルアクセスコールバック関数構造体
arg1AILIA_USER_API_FOPEN に通知される引数ポインタ
arg2AILIA_USER_API_FOPEN に通知される引数ポインタ
戻り値
成功した場合はtrue、失敗した場合はfalseを返す。 @detail  ファイルコールバックからネットワークオブジェクトを作成します。

ailia.AiliaPoseEstimatorModel, ailia.AiliaFeatureExtractorModel, ailia.AiliaDetectorModel, ailia.AiliaClassifierModelで再実装されています。

584  {
585  Close();
586 
587  int status = Status = Ailia.ailiaCreate(ref ailia, env_id, Ailia.AILIA_MULTITHREAD_AUTO);
588  if (status != Ailia.AILIA_STATUS_SUCCESS)
589  {
590  DisplayLicenseError(status);
591  if (logging)
592  {
593  Debug.Log("ailiaCreate failed " + status + " (" + GetStatusString(status) + ")");
594  }
595  return false;
596  }
597 
598  if (memory_mode != Ailia.AILIA_MEMORY_OPTIMAIZE_DEFAULT)
599  {
600  status = Status = Ailia.ailiaSetMemoryMode(ailia, memory_mode);
601  if (status != Ailia.AILIA_STATUS_SUCCESS)
602  {
603  if (logging)
604  {
605  Debug.Log("ailiaSetMemoryMode failed " + status + " (" + GetStatusString(status) + ")");
606  }
607  Close();
608  return false;
609  }
610  }
611  if (disalbe_layer_fusion)
612  {
613  status = Status = Ailia.ailiaDisableLayerFusion(ailia);
614  if (status != Ailia.AILIA_STATUS_SUCCESS)
615  {
616  if (logging)
617  {
618  Debug.Log("ailiaDisableLayerFusion failed " + status + " (" + GetStatusString(status) + ")");
619  }
620  Close();
621  return false;
622  }
623  }
624 
625  if (arg1 != null)
626  {
627  status = Status = Ailia.ailiaOpenStreamEx(ailia, arg1, callback, Ailia.AILIA_FILE_CALLBACK_VERSION);
628  if (status != Ailia.AILIA_STATUS_SUCCESS)
629  {
630  if (logging)
631  {
632  Debug.Log("ailiaOpenStreamFileEx failed " + status + " (" + GetStatusString(status) + ")");
633  }
634  Close();
635  return false;
636  }
637  }
638 
639  status = Status = Ailia.ailiaOpenWeightEx(ailia, arg2, callback, Ailia.AILIA_FILE_CALLBACK_VERSION);
640  if (status != Ailia.AILIA_STATUS_SUCCESS)
641  {
642  if (logging)
643  {
644  Debug.Log("ailiaOpenWeightFileEx failed " + status + " (" + GetStatusString(status) + ")");
645  }
646  Close();
647  return false;
648  }
649 
650  return true;
651  }

◆ OpenFile()

virtual bool ailia.AiliaModel.OpenFile ( string  prototxt_path,
string  model_path 
)
inlinevirtual

モデルファイルからネットワークオブジェクトを作成します。

引数
prototxt_path prototxtファイルのパス名(MBSC or UTF16)
model_pathprotobuf/onnxファイルのパス名(MBSC or UTF16)
戻り値
成功した場合はtrue、失敗した場合はfalseを返す。 @detail モデルファイルからネットワークオブジェクトを作成します。

ailia.AiliaPoseEstimatorModel, ailia.AiliaFeatureExtractorModel, ailia.AiliaDetectorModel, ailia.AiliaClassifierModelで再実装されています。

386  {
387  Close();
388 
389  int status = Status = Ailia.ailiaCreate(ref ailia, env_id, Ailia.AILIA_MULTITHREAD_AUTO);
390  if (status != Ailia.AILIA_STATUS_SUCCESS)
391  {
392  DisplayLicenseError(status);
393  if (logging)
394  {
395  Debug.Log("ailiaCreate failed " + status + " (" + GetStatusString(status) + ")");
396  }
397  return false;
398  }
399 
400  if (memory_mode != Ailia.AILIA_MEMORY_OPTIMAIZE_DEFAULT)
401  {
402  status = Status = Ailia.ailiaSetMemoryMode(ailia, memory_mode);
403  if (status != Ailia.AILIA_STATUS_SUCCESS)
404  {
405  if (logging)
406  {
407  Debug.Log("ailiaSetMemoryMode failed " + status + " (" + GetStatusString(status) + ")");
408  }
409  Close();
410  return false;
411  }
412  }
413  if (disalbe_layer_fusion)
414  {
415  status = Status = Ailia.ailiaDisableLayerFusion(ailia);
416  if (status != Ailia.AILIA_STATUS_SUCCESS)
417  {
418  if (logging)
419  {
420  Debug.Log("ailiaDisableLayerFusion failed " + status + " (" + GetStatusString(status) + ")");
421  }
422  Close();
423  return false;
424  }
425  }
426 
427  if (prototxt_path != null)
428  {
429  status = Status = Ailia.ailiaOpenStreamFile(ailia, prototxt_path);
430  if (status != Ailia.AILIA_STATUS_SUCCESS)
431  {
432  if (logging)
433  {
434  Debug.Log("ailiaOpenStreamFile failed " + status + " (" + GetStatusString(status) + ")");
435  }
436  Close();
437  return false;
438  }
439  }
440 
441  status = Status = Ailia.ailiaOpenWeightFile(ailia, model_path);
442  if (status != Ailia.AILIA_STATUS_SUCCESS)
443  {
444  if (logging)
445  {
446  Debug.Log("ailiaOpenWeightFile failed " + status + " (" + GetStatusString(status) + ")");
447  }
448  Close();
449  return false;
450  }
451 
452  return true;
453  }

◆ OpenMem()

virtual bool ailia.AiliaModel.OpenMem ( byte[]  prototxt_buf,
byte[]  model_buf 
)
inlinevirtual

メモリからネットワークオブジェクトを作成します。

引数
prototxt_bufprototxtファイルのデータへのポインタ
model_bufprotobuf/onnxファイルのデータへのポインタ
戻り値
成功した場合はtrue、失敗した場合はfalseを返す。 @detail メモリからネットワークオブジェクトを作成します。

ailia.AiliaPoseEstimatorModel, ailia.AiliaFeatureExtractorModel, ailia.AiliaDetectorModel, ailia.AiliaClassifierModelで再実装されています。

479  {
480  Close();
481 
482  if (model_buf == null || model_buf.Length == 0 || (prototxt_buf != null && prototxt_buf.Length == 0))
483  {
484  if (logging)
485  {
486  Debug.Log("input buffer is empty");
487  }
488  return false;
489  }
490 
491  int status = Status = Ailia.ailiaCreate(ref ailia, env_id, Ailia.AILIA_MULTITHREAD_AUTO);
492  if (status != Ailia.AILIA_STATUS_SUCCESS)
493  {
494  DisplayLicenseError(status);
495  if (logging)
496  {
497  Debug.Log("ailiaCreate failed " + status + " (" + GetStatusString(status) + ")");
498  }
499  return false;
500  }
501 
502  if (memory_mode != Ailia.AILIA_MEMORY_OPTIMAIZE_DEFAULT)
503  {
504  status = Status = Ailia.ailiaSetMemoryMode(ailia, memory_mode);
505  if (status != Ailia.AILIA_STATUS_SUCCESS)
506  {
507  if (logging)
508  {
509  Debug.Log("ailiaSetMemoryMode failed " + status + " (" + GetStatusString(status) + ")");
510  }
511  Close();
512  return false;
513  }
514  }
515  if (disalbe_layer_fusion)
516  {
517  status = Status = Ailia.ailiaDisableLayerFusion(ailia);
518  if (status != Ailia.AILIA_STATUS_SUCCESS)
519  {
520  if (logging)
521  {
522  Debug.Log("ailiaDisableLayerFusion failed " + status + " (" + GetStatusString(status) + ")");
523  }
524  Close();
525  return false;
526  }
527  }
528 
529  if (prototxt_buf != null)
530  {
531  status = Status = Ailia.ailiaOpenStreamMem(ailia, prototxt_buf, (uint)prototxt_buf.Length);
532  if (status != Ailia.AILIA_STATUS_SUCCESS)
533  {
534  if (logging)
535  {
536  Debug.Log("ailiaOpenStreamMem failed " + status + " (" + GetStatusString(status) + ")");
537  }
538  Close();
539  return false;
540  }
541  }
542 
543  status = Status = Ailia.ailiaOpenWeightMem(ailia, model_buf, (uint)model_buf.Length);
544  if (status != Ailia.AILIA_STATUS_SUCCESS)
545  {
546  if (logging)
547  {
548  Debug.Log("ailiaOpenWeightMem filed " + status + " (" + GetStatusString(status) + ")");
549  }
550  Close();
551  return false;
552  }
553 
554  return true;
555  }

◆ Predict()

bool ailia.AiliaModel.Predict ( float[]  output_data,
float[]  input_data 
)
inline

推論を行い推論結果を取得します。

引数
output_data出力データの書き出し先
input_data推論データ
戻り値
成功した場合はtrue、失敗した場合はfalseを返す。 @detail input_dataを入力としてAilia.ailiaPredict()で推論を行い、output_dataに出力します。 このAPIは1入力1出力のモデルで使用可能です。 多入出力のモデルを推論する場合は、SetInputBlobData、Update、GetBlobData APIを使用してください。
682  {
683  if (ailia == IntPtr.Zero)
684  {
685  return false;
686  }
687 
688  //バッファの固定
689  GCHandle input_buf_handle = GCHandle.Alloc(input_data, GCHandleType.Pinned);
690  IntPtr input_buf_ptr = input_buf_handle.AddrOfPinnedObject();
691 
692  GCHandle output_buf_handle = GCHandle.Alloc(output_data, GCHandleType.Pinned);
693  IntPtr output_buf_ptr = output_buf_handle.AddrOfPinnedObject();
694 
695  //推論
696  int status = Status = Ailia.ailiaPredict(ailia, output_buf_ptr, (uint)(output_data.Length * 4), input_buf_ptr, (uint)(input_data.Length * 4));
697 
698  //バッファの開放
699  input_buf_handle.Free();
700  output_buf_handle.Free();
701 
702  if (status != Ailia.AILIA_STATUS_SUCCESS)
703  {
704  if (logging)
705  {
706  Debug.Log("ailiaPredict failed " + status + " (" + GetStatusString(status) + ")");
707  }
708  return false;
709  }
710  return true;
711  }

◆ SelectEnvironment()

bool ailia.AiliaModel.SelectEnvironment ( int  idx)
inline

計算環境を選択します。

引数
idx環境情報のインデックス (0~ ailiaGetEnvironmentCount() -1)
戻り値
成功した場合は true 、失敗した場合は false を返す。

指定したインデックスの計算環境を推論環境として選択します。

195  {
196  Ailia.AILIAEnvironment env = GetEnvironment(idx);
197  if (env == null)
198  {
199  return false;
200  }
201  env_id = env.id;
202  env_name = Marshal.PtrToStringAnsi(env.name);
203  return true;
204  }

◆ SetInputBlobData() [1/2]

public bool ailia.AiliaModel.SetInputBlobData ( float[]  input_data,
int  idx 
)
inline

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

1218  {
1219  if (ailia == IntPtr.Zero || idx < 0)
1220  {
1221  return false;
1222  }
1223  return SetInputBlobData(input_data, (uint)idx);
1224  }
bool SetInputBlobData(float[] input_data, uint idx)
指定したBlobに入力データを設定します。
Definition: AiliaModel.cs:1187

◆ SetInputBlobData() [2/2]

bool ailia.AiliaModel.SetInputBlobData ( float[]  input_data,
uint  idx 
)
inline

指定したBlobに入力データを設定します。

引数
input_data推論データ X,Y,Z,Wの順でnumeric型で格納 サイズはネットファイルのinputSizeとなる (バッファの確保してるので厳密にailia.csの説明と同じでいいかわからない)
idx設定を変更するBlobのインデックス
戻り値
成功した場合は true を、失敗した場合は false を返す。

Ailia.ailiaSetInPutBlobData() で指定したBlobに入力データを与えます。

1188  {
1189  if (ailia == IntPtr.Zero)
1190  {
1191  return false;
1192  }
1193 
1194  GCHandle input_buf_handle = GCHandle.Alloc(input_data, GCHandleType.Pinned);
1195  IntPtr input_buf_ptr = input_buf_handle.AddrOfPinnedObject();
1196  int status = Status = Ailia.ailiaSetInputBlobData(ailia, input_buf_ptr, (uint)(input_data.Length * 4), idx);
1197  input_buf_handle.Free();
1198 
1199  if (status != Ailia.AILIA_STATUS_SUCCESS)
1200  {
1201  if (logging)
1202  {
1203  Debug.Log("ailiaSetInputBlobData failed " + status + " (" + GetStatusString(status) + ")");
1204  }
1205  return false;
1206  }
1207  return true;
1208  }

◆ SetInputBlobShape() [1/2]

public bool ailia.AiliaModel.SetInputBlobShape ( Ailia.AILIAShape  shape,
int  idx 
)
inline

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

1280  {
1281  if (idx < 0)
1282  {
1283  return false;
1284  }
1285  return SetInputBlobShape(shape, (uint)idx);
1286  }
bool SetInputBlobShape(Ailia.AILIAShape shape, uint idx)
指定した入力データ(Blob)の形式を設定します。(4次元以下)
Definition: AiliaModel.cs:1253

◆ SetInputBlobShape() [2/2]

bool ailia.AiliaModel.SetInputBlobShape ( Ailia.AILIAShape  shape,
uint  idx 
)
inline

指定した入力データ(Blob)の形式を設定します。(4次元以下)

引数
shape入力データの形状情報
idx変更するBlobのインデックス
戻り値
成功した場合は true を、失敗した場合は false を返す。 @detail 複数入力があるネットワークなどで入力形状を変更する場合に用います。 Ailia.ailiaSetInputBlobShape() で指定した入力データ(Blob)の形式を変更します。 入力形状のランクが5次元以上の場合は、SetInputShapeND() を利用してください。
1254  {
1255  if (ailia == IntPtr.Zero)
1256  {
1257  return false;
1258  }
1259 
1260  int status = Status = Ailia.ailiaSetInputBlobShape(ailia, shape, idx, Ailia.AILIA_SHAPE_VERSION);
1261  if (status != Ailia.AILIA_STATUS_SUCCESS)
1262  {
1263  if (logging)
1264  {
1265  Debug.Log("ailiaSetInputBlobShape failed " + status + " (" + GetStatusString(status) + ")");
1266  }
1267  return false;
1268  }
1269  return true;
1270  }

◆ SetInputBlobShapeND() [1/2]

public bool ailia.AiliaModel.SetInputBlobShapeND ( uint[]  shape,
int  dim,
int  idx 
)
inline

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

1338  {
1339  if (idx < 0 || dim < 0)
1340  {
1341  return false;
1342  }
1343  return SetInputBlobShapeND(shape, (uint)dim, (uint)idx);
1344  }
bool SetInputBlobShapeND(uint[] shape, uint dim, uint idx)
入力データ(Blob)の形式を設定します。(5次元以上)
Definition: AiliaModel.cs:1311

◆ SetInputBlobShapeND() [2/2]

bool ailia.AiliaModel.SetInputBlobShapeND ( uint[]  shape,
uint  dim,
uint  idx 
)
inline

入力データ(Blob)の形式を設定します。(5次元以上)

引数
shape入力データの形状情報
dimshape の次元
idx変更するBlobのインデックス
戻り値
成功した場合は true を、失敗した場合は false を返す。 @detail 複数入力があるネットワークなどで入力形状を変更する場合に用います。 Ailia.ailiaSetInputBlobShapeND() で指定した入力データ(Blob)の形式を変更します。
1312  {
1313  if (ailia == IntPtr.Zero)
1314  {
1315  return false;
1316  }
1317 
1318  int status = Status = Ailia.ailiaSetInputBlobShapeND(ailia, shape, dim, idx);
1319  if (status != Ailia.AILIA_STATUS_SUCCESS)
1320  {
1321  if (logging)
1322  {
1323  Debug.Log("ailiaSetInputBlobShapeND failed " + status + " (" + GetStatusString(status) + ")");
1324  }
1325  return false;
1326  }
1327  return true;
1328  }

◆ SetInputShape()

bool ailia.AiliaModel.SetInputShape ( Ailia.AILIAShape  shape)
inline

推論時の入力データの形状を設定します。

引数
shape入力データの形状情報
戻り値
成功した場合は true 、失敗した場合は false を返す。 @detail prototxtで定義されている入力形状を変更します。 prototxtに記述されているランクと同じにする必要があります。 なお、重み係数の形状が入力形状に依存しているなどによりエラーが返る場合があります。 prototxtで定義されているランクが5次元以上の場合は SetInputShapeND() を利用してください。
831  {
832  if (ailia == IntPtr.Zero)
833  {
834  return false;
835  }
836 
837  int status = Status = Ailia.ailiaSetInputShape(ailia, shape, Ailia.AILIA_SHAPE_VERSION);
838  if (status != Ailia.AILIA_STATUS_SUCCESS)
839  {
840  if (logging)
841  {
842  Debug.Log("ailiaSetInputShape failed " + status + " (" + GetStatusString(status) + ")");
843  }
844  return false;
845  }
846  return true;
847  }

◆ SetInputShapeND()

bool ailia.AiliaModel.SetInputShapeND ( uint[]  shape,
int  dim 
)
inline

推論時の入力データの形状を変更します。

引数
netネットワークオブジェクトポインタ
shape入力データの各次元の大きさの配列(dim-1, dim-2, ... ,1, 0)
dimshapeの次元
戻り値
成功した場合は ture 、そうでなければ false を返す。

prototxtで定義されている入力形状を変更します。 prototxtに記述されているランクと同じにする必要があります。 なお、重み係数の形状が入力形状に依存しているなどによりエラーが返る場合があります。

875  {
876  if (ailia == IntPtr.Zero || dim < 0)
877  {
878  return false;
879  }
880 
881  int status = Status = Ailia.ailiaSetInputShapeND(ailia, shape, (uint)dim);
882  if (status != Ailia.AILIA_STATUS_SUCCESS)
883  {
884  if (logging)
885  {
886  Debug.Log("ailiaSetInputShapeND failed " + status + " (" + GetStatusString(status) + ")");
887  }
888  return false;
889  }
890  return true;
891  }

◆ SetMemoryMode()

void ailia.AiliaModel.SetMemoryMode ( uint  set_memory_mode)
inline

メモリモードを設定します

引数
set_memory_modeメモリモード(論理和で複数指定可) AILIA_MEMORY_XXX (デフォルト: AILIA_MEMORY_REDUCE_CONSTANT )
戻り値
なし

メモリの使用方針の設定を変更します。 AILIA_MEMORY_NO_OPTIMIZATION 以外を指定した場合は、 推論時に確保する中間バッファーを開放するため、推論時のメモリ使用量を削減することができます。

342  {
343  memory_mode = set_memory_mode;
344  }

◆ SetProfileMode()

bool ailia.AiliaModel.SetProfileMode ( uint  profile_mode)
inline

プロファイルモードを有効にします。

戻り値
成功した場合は true 、失敗した場合は false を返します。 @detail プロファイルモードを有効にします。プロファイルモードを有効にして推論後、Summary APIでプロファイル結果を取得します。
1638  {
1639  int status = Status = Ailia.ailiaSetProfileMode(ailia, profile_mode);
1640  if (status != Ailia.AILIA_STATUS_SUCCESS)
1641  {
1642  if (logging)
1643  {
1644  Debug.Log("ailiaSetProfileMode failed " + status + " (" + GetStatusString(status) + ")");
1645  }
1646  return false;
1647  }
1648  return true;
1649  }

◆ Update()

bool ailia.AiliaModel.Update ( )
inline

事前に入力したデータで推論を行います。

戻り値
成功した場合は true 、失敗した場合は false を返します。 @detail SetInputBlobData() を用いて入力を与えた場合などに用います。 推論結果は GetBlobData() で取得してください。
1497  {
1498  if (ailia == IntPtr.Zero)
1499  {
1500  return false;
1501  }
1502  int status = Status = Ailia.ailiaUpdate(ailia);
1503  if (status != Ailia.AILIA_STATUS_SUCCESS)
1504  {
1505  if (logging)
1506  {
1507  Debug.Log("ailiaUpdate failed " + status + " (" + GetStatusString(status) + ")");
1508  }
1509  return false;
1510  }
1511  return true;
1512  }

メンバ詳解

◆ ailia

IntPtr ailia.AiliaModel.ailia = IntPtr.Zero
protected

◆ logging

bool ailia.AiliaModel.logging = true
protected

プロパティ詳解

◆ Status

int ailia.AiliaModel.Status
getprotected set

ステータスコード @detail ライブラリのステータスコードを取得します。

1619 { get; protected set; }

このクラス詳解は次のファイルから抽出されました: