Changes between Version 1 and Version 2 of epics/transferArray


Ignore:
Timestamp:
06/30/14 17:52:43 (11 years ago)
Author:
Iituka
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TabularUnified epics/transferArray

    v1 v2  
    22
    33== transferArrayとは ==
    4 waveformをベースにしたレコードで、あるレコードの任意の範囲を、異なるレコードの任意位置に転送する機能をもつレコードです。
     4waveformをベースにしたレコードで、あるレコードの任意の範囲を、異なるレコードの任意位置に転送する機能をもつレコードです。[[BR]]
     5自身の内容は、基本的に転送する領域と同じ内容になります。[[BR]]
     6また、オプションの指定で、転送領域以降を0クリアすることも可能です。
    57
    68== transferArrayレコードの使用方法について ==
    79
    8 waveformに対して追加されるパラメータフィールドは下の通りです。
     10waveformに対して追加されるパラメータフィールドは下の通りです。
    911||'''Field'''||'''Summary'''||'''Type'''||'''DCT'''||'''Initial'''||'''Access'''||'''Modify'''||'''Rec Proc Monitor'''||'''PP'''||
    1012||OUT||出力先のレコード||OUTLINK||Yes||0||No||No||N/A||No||
     
    1416||TAZF||Zero-fillフラグ||ULONG||Yes||0||Yes||No||No||No||
    1517
     18 * ''OUT''フィールドで、転送先のレコードを指定します。
     19 * ''TASI''フィールドで、転送元レコードのどこから転送を開始するかを、要素番号で指定します。指定は0オリジンですので、先頭の要素であれば、0を指定します。転送元レコードの要素数を超える値を指定することはできません。指定するとエラーとなり転送は行われません。
     20 * ''TADI''フィールドで、転送先レコードのどこに転送するかを、要素番号で指定します。TASIフィールドと同様に0オリジンでの指定になります。転送先レコードの要素数を超える値を指定することはできません。指定するとエラーとなり転送は行われません。
     21 * ''TATC''フィールドで、転送する要素数を指定します。転送元レコードや転送先レコードの領域を超えるような転送数を指定した場合、超えた分を無視して可能な分だけ転送を行います。この場合、レコードにLINK_ALARM/ALARM_MINORがセットされます。
     22
     23サンプル.dbファイル
     24{{{
     25record(waveform, "hig-iitk:src") {
     26    field(NELM, "10")
     27    field(FTVL, "LONG")
     28}
     29record(waveform, "hig-iitk:dst") {
     30    field(NELM, "10")
     31    field(FTVL, "LONG")
     32}
     33record(transferArray, "hig-iitk:ta") {
     34    field(NELM, "10")
     35    field(FTVL, "LONG")
     36    field(INP,  "hig-iitk:src")
     37    field(OUT,  "hig-iitk:dst")
     38    field(TASI, "0")
     39    field(TADI, "0")
     40    field(TATC, "5")
     41    field(TAZF, "0")
     42}
     43}}}
     44