Built-In Namespace _global_
Field Attributes | Field Name and Description |
---|---|
ローカルリポジトリ
主に最近の作業データをキャッシュする役目
カットのデータを履歴付きで保持できる
複数カットを扱う 制限カット数内のリングバッファ動作
xUIから見るとサーバの一種として働く
ローカルストレージを利用して稼働する
保存形式
info.nekomataya.remaping.dataStore
内部にオブジェクト保存
リポジトリのデータ取得メソッド
Repository.title(myIdentifier)
Repository.opus(myIdentifier)
Repository.cut(myIdentifier)
Repository.entry(myIdentifier)
productsData追加
プロダクトデータは DBに直接接続して情報ストアするオブジェクト
JSONで通信を行う場合に必須
entryList(listEntryコレクション)はこのデータから生成するように変更される?
またはentryListからproductsDataを生成する 同時か?
動作試験のため maxEntryを増やしてある 10>32 170705
|
|
サービスエージェントオブエジェクト
ログインするサーバを選んでログイン処理をする
ログイン情報を保持して
状態は offline/onnline/online-single の3状態
モードによっては機能が制限される
UI上モードを表示するシンボルが必要
servers ServiceNode
|
|
valueDetect = fale;
値指定ノード\[[^\]]+\]を検出した場合、セルエントリーの角括弧を払って評価値を得る かつ フラグを立てる (valueDetect = true)
それ以外はセルエントリーを評価値とする
xMapで評価値をエントリ検索
マップエントリがない場合でかつ valueDetect == true なら エントリを作成してそれを値として使用
エントリがあれば valueDetect = true なければ false
valueDetect==true
カレントセクションが中間値補間セクションだった場合はカレントセクションをクロースして検出した値をもつ値セクションを初期化する
カレントセクションの値が未設定の場合、カレントセクションの値を設定
カレントセクションに値がある場合は新規の値セクションを初期化
valueDetect==false
エントリがない場合は中間値指定ノードとなる
カレントセクションが中間値補間セクションだった場合は新規に副補間区間を初期化
値区間だった場合は新規に中間値補間セクションを初期化して第一副補間区間を初期化する
トラック内無効記述(コメント)は現在許可されない。
|
Method Attributes | Method Name and Description |
---|---|
_cut(myIdentifier)
CUT取得
myIdentifier は識別子またはトークンからカットノードを戻す
|
|
_opus(myIdentifier, searchDepth)
OPUS取得
引数:
myIdentifier 識別子またはトークン
識別子またはトークンからエピソードノードを戻す
該当するオブジェクトがない場合はnullを戻す
|
|
ノートテキスト・タイムシート記述(カメラワーク・エフェクト)オブジェクト
具体的なステージワークやコンポジットワークを抽象化した シンボリックオブジェクト
トラック内には複数のオブジェクトを表記可能
値区間のみ
または値区間にぶら下がった補完区間を一組として扱う
トラック名は、基本的に論理的な分類の役割のみをあつかう
各効果は必要に従ってジオメトリトラック コンポジットトラックとして分解統合が期待される
このトラックのリンクとペアレントは、必ずしも整合性を持たない。
"[A],▽,|,|,|,|,|,PAN,|,|,|,|,|,△,[B]"
"[1],▽,|,|,|,|,|,SL→,|,|,|,|,|,△,[2]"
"]OL[,|,|,|,|,s-c12,*,s-c13,|,|,|,|,]OL["
"]WIPE[,|,|,|,|,s-c12,*,s-c13,|,|,|,|,]WIPE["
"▲,|,|,FI,|,|,▲"
"■","■","■","<黒コマ>","■","■","■"
等のソースストリームをパースする
>ブランクセクション 値なしで長さのみがある Section.value.type = geometryセクションの前後には必ずつく
区間を開始するエントリー
[ブラケット]値エントリ
後続フレームから値つきgeometry区間を開始
]逆ブラケット[エントリ
トランジション区間を開始・終了
開始時に終了サインを設定
空白エントリ
空白区間を開始
何らかの有効エントリーで終了
|
|
コンポジットトラックをパースしてセクションコレクションを返す
option:(effect|sfx|composite)
セクションの状態は
値:
あり>有値セクション
何らかの値オブジェクトを持つ値セクション この継続時間中トラックの持つ値は変化しない最短で1フレーム
なし>中間値補間セクション
valueプロパティが空で値オブジェクトを持たない
中間値補間サブセクションコレクションを持つ
compositeタイムライントラックセクションの開始、終了判定
セクションは「値区間(セクション)」と「中間値補間区間(セクション)」の2種に分類される
中間値セクションは必ず前後に値セクションを持つ
値区間は連続することが可能
値区間は最低でも1フレームの継続時間を持ち、そのトラックの返す値を保持する
補間区間は、値オブジェクトを持たず、サブセクションコレクションを持ち 前後の値区間の中間値を補間して戻す
補間区間は補間区間開始セパレータで開始され終了セパレータで閉じる
入力としては開始セパレータと終了セパレータが同一のエントリを対で使用することが求められる
開始セパレータで宣言された補間区間は、明示的に開始セパレータと対の終了セパレータで閉じられるか又は
後続の値エントリを宣言して値区間を開始されくまでの間継続される
補間区間はその区間が閉じられるまでの間 すべての空白以外のエントリが副補間区間を開始する。
補間区間中すべてのエントリが空白であった場合に限り、空白区間がすべて副補間区間のエントリとなる
(=補間区間に何も間に置かなかったトラックは1コマ撮りの補間区間となる)
|
|
置きかえタイムライントラックをパースしてセクションコレクションを返す
セクションの値を各トラックごとの値オブジェクトからxMapを介したxMapエレメントに変更する
パース時にセクションの値判定を行う
・無効記述
・有効記述 値あり(xMap既存エレメント)・なし(新規エレメント)
タイムライントラックをパースする際に統一手順としてトラックに対応するxMapエレメントグループの有無を確認する。
現行Jobにトラックと同名のエレメントグループが、存在しなかった場合(Stageには存在する可能性あり)は、新規にグループを作成してエントリすること。
この処理は、トラックパースの前段階で共通で行うことにする
確認手段は xMap.getElementByName(グループ名)を使用
//XpsTimelineTrack.parseTimelineTrack() メソッドに置く
中間値補間区間の空セルに対応するために全体のブランク処理をサブセクションコレクションに置く
置きかえタイムラインのみの処置
カラ状態のみを扱うsctionCollectionを併置してセットで扱うので注意
各セクションのvalueは on/off(true/false)のみでオブジェクトは使用されない エレメントへのリンクも無い
一つのトラックをパースして二つのセクションコレクションを得る
値側のコレクションは、従来のカラを含むことができるが、このパーサが書き出すデータ上は従来型のカラが含まれることは無い
カラ区間の値は先行区間の値となる
カラセル区間コレクションは2つの状態しか持ち得ないので、サブセクションは発生しない
|
|
_title(myIdentifier, searchDepth)
TITLE取得
引数:
myIdentifier 識別子またはトークン
searchDepth 検索深度 0:タイトルのみ 1:エピソードからもタイトルを探す 2:カットからも
エピソードやカットのトークンからもタイトルノードを返す
深度指定省略時は 0
該当するオブジェクトがない場合はnullを戻す
|
|
issuesSorter(val1, val2)
比較関数 管理情報 3要素の管理情報配列 issuesを比較して先行の管理ノード順位を評価する関数
ライン拡張時は追加処理が必要
|
|
listEntry(myIdentifier)
listEntry オブジェクト
初期化引数:カット識別子[タイトルID,話数ID,カットID]
タイトルID、話数IDは将来的にタイトル話数エントリへのアクセスキーを入力
カットIDは自身のDBエントリへのアクセスキーを設定する
現在は省略可だがDB整備され次第必須
ローカルリポジトリの場合はそれぞれのエントリのキーを省略なしに入力
ドキュメントリストにエントリされるオブジェクト
parent リポジトリへの参照
product 作品と話数
sci カット番号(兼用情報含む)
issues 管理情報 4要素一次元配列 [line,stage,job,status]
実際のデータファイルはissueごとに記録される
いずれも URIエンコードされた状態で格納されているので画面表示の際は、デコードが必要
issues には オリジナル(初期化時)の識別子を保存する
ネットワークリポジトリに接続する場合は以下のプロパティが設定される
listEntry.titleID /string token
listEntry.episodeID /string token
listEntry.issues[#].cutID /string token
listEntry.issues[#].versionID /string token
オブジェクトメソッド
listEntry.toString(Index)
listEntry.push(Identifier)
listEntry.getStatus()
listEntry は listEntryCollection に格納される
listEntryCollection はデフォルトで this.parent.entryListとして参照される。
|
|
エントリリストコレクション
配列ベースで以下のメソッドを持つ
.put(entry) ;エントリ追加
.remove(idf) ;idf指定でエントリ削除
.getByIdf(idf) ;idf指定でエントリを返す
.getByToken(token) ;ネットワークのみ
|
|
NetworkRepository(repositoryName, myServer, repositoryURI)
ネットワーク上のリポジトリオブジェクト
識別名とサーバを与えて初期化する
リポジトリとしての共通メソッド
.getList()
.title(myIdentifier)
.opus(myIdentifier)
.cut(myIdentifier)
.entry(myIdentifier)
.push(myXps)
リポジトリに 相当する構造は Team
チームごとにリポジトリが設定される
Teamへアクセスするためのトークンは、アクセス毎に設定される
リポジトリは、複数の同一名称のリポジトリが想定されるため、補助的にオーナー情報を保持する仕様を追加
特に同作品の複製を見分けるために必須 APIに追加
|
|
numSorter(val1, val2)
ソート比較関数
カット番号(文字列内の最初の整数クラスタ)を整数化して比較
|
|
ServiceNode(serviceName, serviceURL)
|
Field Detail
localRepository
ローカルリポジトリ
主に最近の作業データをキャッシュする役目
カットのデータを履歴付きで保持できる
複数カットを扱う 制限カット数内のリングバッファ動作
xUIから見るとサーバの一種として働く
ローカルストレージを利用して稼働する
保存形式
info.nekomataya.remaping.dataStore
内部にオブジェクト保存
リポジトリのデータ取得メソッド
Repository.title(myIdentifier)
Repository.opus(myIdentifier)
Repository.cut(myIdentifier)
Repository.entry(myIdentifier)
productsData追加
プロダクトデータは DBに直接接続して情報ストアするオブジェクト
JSONで通信を行う場合に必須
entryList(listEntryコレクション)はこのデータから生成するように変更される?
またはentryListからproductsDataを生成する 同時か?
動作試験のため maxEntryを増やしてある 10>32 170705
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
serviceAgent
サービスエージェントオブエジェクト
ログインするサーバを選んでログイン処理をする
ログイン情報を保持して
状態は offline/onnline/online-single の3状態
モードによっては機能が制限される
UI上モードを表示するシンボルが必要
servers ServiceNode
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
valueDetect
valueDetect = fale;
値指定ノード\[[^\]]+\]を検出した場合、セルエントリーの角括弧を払って評価値を得る かつ フラグを立てる (valueDetect = true)
それ以外はセルエントリーを評価値とする
xMapで評価値をエントリ検索
マップエントリがない場合でかつ valueDetect == true なら エントリを作成してそれを値として使用
エントリがあれば valueDetect = true なければ false
valueDetect==true
カレントセクションが中間値補間セクションだった場合はカレントセクションをクロースして検出した値をもつ値セクションを初期化する
カレントセクションの値が未設定の場合、カレントセクションの値を設定
カレントセクションに値がある場合は新規の値セクションを初期化
valueDetect==false
エントリがない場合は中間値指定ノードとなる
カレントセクションが中間値補間セクションだった場合は新規に副補間区間を初期化
値区間だった場合は新規に中間値補間セクションを初期化して第一副補間区間を初期化する
トラック内無効記述(コメント)は現在許可されない。
Defined in: newValueConstractors.js.
Defined in: newValueConstractors.js.
Method Detail
_cut(myIdentifier)
CUT取得
myIdentifier は識別子またはトークンからカットノードを戻す
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
- Parameters:
- myIdentifier
_opus(myIdentifier, searchDepth)
OPUS取得
引数:
myIdentifier 識別子またはトークン
識別子またはトークンからエピソードノードを戻す
該当するオブジェクトがない場合はnullを戻す
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
- Parameters:
- myIdentifier
- searchDepth
_parseCameraworkTrack()
ノートテキスト・タイムシート記述(カメラワーク・エフェクト)オブジェクト
具体的なステージワークやコンポジットワークを抽象化した シンボリックオブジェクト
トラック内には複数のオブジェクトを表記可能
値区間のみ
または値区間にぶら下がった補完区間を一組として扱う
トラック名は、基本的に論理的な分類の役割のみをあつかう
各効果は必要に従ってジオメトリトラック コンポジットトラックとして分解統合が期待される
このトラックのリンクとペアレントは、必ずしも整合性を持たない。
"[A],▽,|,|,|,|,|,PAN,|,|,|,|,|,△,[B]"
"[1],▽,|,|,|,|,|,SL→,|,|,|,|,|,△,[2]"
"]OL[,|,|,|,|,s-c12,*,s-c13,|,|,|,|,]OL["
"]WIPE[,|,|,|,|,s-c12,*,s-c13,|,|,|,|,]WIPE["
"▲,|,|,FI,|,|,▲"
"■","■","■","<黒コマ>","■","■","■"
等のソースストリームをパースする
>ブランクセクション 値なしで長さのみがある Section.value.type = geometryセクションの前後には必ずつく
区間を開始するエントリー
[ブラケット]値エントリ
後続フレームから値つきgeometry区間を開始
]逆ブラケット[エントリ
トランジション区間を開始・終了
開始時に終了サインを設定
空白エントリ
空白区間を開始
何らかの有効エントリーで終了
Defined in: newValueConstractors.js.
Defined in: newValueConstractors.js.
_parseCompositeTrack()
コンポジットトラックをパースしてセクションコレクションを返す
option:(effect|sfx|composite)
セクションの状態は
値:
あり>有値セクション
何らかの値オブジェクトを持つ値セクション この継続時間中トラックの持つ値は変化しない最短で1フレーム
なし>中間値補間セクション
valueプロパティが空で値オブジェクトを持たない
中間値補間サブセクションコレクションを持つ
compositeタイムライントラックセクションの開始、終了判定
セクションは「値区間(セクション)」と「中間値補間区間(セクション)」の2種に分類される
中間値セクションは必ず前後に値セクションを持つ
値区間は連続することが可能
値区間は最低でも1フレームの継続時間を持ち、そのトラックの返す値を保持する
補間区間は、値オブジェクトを持たず、サブセクションコレクションを持ち 前後の値区間の中間値を補間して戻す
補間区間は補間区間開始セパレータで開始され終了セパレータで閉じる
入力としては開始セパレータと終了セパレータが同一のエントリを対で使用することが求められる
開始セパレータで宣言された補間区間は、明示的に開始セパレータと対の終了セパレータで閉じられるか又は
後続の値エントリを宣言して値区間を開始されくまでの間継続される
補間区間はその区間が閉じられるまでの間 すべての空白以外のエントリが副補間区間を開始する。
補間区間中すべてのエントリが空白であった場合に限り、空白区間がすべて副補間区間のエントリとなる
(=補間区間に何も間に置かなかったトラックは1コマ撮りの補間区間となる)
Defined in: newValueConstractors.js.
Defined in: newValueConstractors.js.
_parseReplacementTrack()
置きかえタイムライントラックをパースしてセクションコレクションを返す
セクションの値を各トラックごとの値オブジェクトからxMapを介したxMapエレメントに変更する
パース時にセクションの値判定を行う
・無効記述
・有効記述 値あり(xMap既存エレメント)・なし(新規エレメント)
タイムライントラックをパースする際に統一手順としてトラックに対応するxMapエレメントグループの有無を確認する。
現行Jobにトラックと同名のエレメントグループが、存在しなかった場合(Stageには存在する可能性あり)は、新規にグループを作成してエントリすること。
この処理は、トラックパースの前段階で共通で行うことにする
確認手段は xMap.getElementByName(グループ名)を使用
//XpsTimelineTrack.parseTimelineTrack() メソッドに置く
中間値補間区間の空セルに対応するために全体のブランク処理をサブセクションコレクションに置く
置きかえタイムラインのみの処置
カラ状態のみを扱うsctionCollectionを併置してセットで扱うので注意
各セクションのvalueは on/off(true/false)のみでオブジェクトは使用されない エレメントへのリンクも無い
一つのトラックをパースして二つのセクションコレクションを得る
値側のコレクションは、従来のカラを含むことができるが、このパーサが書き出すデータ上は従来型のカラが含まれることは無い
カラ区間の値は先行区間の値となる
カラセル区間コレクションは2つの状態しか持ち得ないので、サブセクションは発生しない
Defined in: newValueConstractors.js.
Defined in: newValueConstractors.js.
_title(myIdentifier, searchDepth)
TITLE取得
引数:
myIdentifier 識別子またはトークン
searchDepth 検索深度 0:タイトルのみ 1:エピソードからもタイトルを探す 2:カットからも
エピソードやカットのトークンからもタイトルノードを返す
深度指定省略時は 0
該当するオブジェクトがない場合はnullを戻す
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
- Parameters:
- myIdentifier
- searchDepth
issuesSorter(val1, val2)
比較関数 管理情報 3要素の管理情報配列 issuesを比較して先行の管理ノード順位を評価する関数
ライン拡張時は追加処理が必要
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
- Parameters:
- val1
- val2
listEntry(myIdentifier)
listEntry オブジェクト
初期化引数:カット識別子[タイトルID,話数ID,カットID]
タイトルID、話数IDは将来的にタイトル話数エントリへのアクセスキーを入力
カットIDは自身のDBエントリへのアクセスキーを設定する
現在は省略可だがDB整備され次第必須
ローカルリポジトリの場合はそれぞれのエントリのキーを省略なしに入力
ドキュメントリストにエントリされるオブジェクト
parent リポジトリへの参照
product 作品と話数
sci カット番号(兼用情報含む)
issues 管理情報 4要素一次元配列 [line,stage,job,status]
実際のデータファイルはissueごとに記録される
いずれも URIエンコードされた状態で格納されているので画面表示の際は、デコードが必要
issues には オリジナル(初期化時)の識別子を保存する
ネットワークリポジトリに接続する場合は以下のプロパティが設定される
listEntry.titleID /string token
listEntry.episodeID /string token
listEntry.issues[#].cutID /string token
listEntry.issues[#].versionID /string token
オブジェクトメソッド
listEntry.toString(Index)
listEntry.push(Identifier)
listEntry.getStatus()
listEntry は listEntryCollection に格納される
listEntryCollection はデフォルトで this.parent.entryListとして参照される。
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
- Parameters:
- myIdentifier
listEntryCollection()
エントリリストコレクション
配列ベースで以下のメソッドを持つ
.put(entry) ;エントリ追加
.remove(idf) ;idf指定でエントリ削除
.getByIdf(idf) ;idf指定でエントリを返す
.getByToken(token) ;ネットワークのみ
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
NetworkRepository(repositoryName, myServer, repositoryURI)
ネットワーク上のリポジトリオブジェクト
識別名とサーバを与えて初期化する
リポジトリとしての共通メソッド
.getList()
.title(myIdentifier)
.opus(myIdentifier)
.cut(myIdentifier)
.entry(myIdentifier)
.push(myXps)
リポジトリに 相当する構造は Team
チームごとにリポジトリが設定される
Teamへアクセスするためのトークンは、アクセス毎に設定される
リポジトリは、複数の同一名称のリポジトリが想定されるため、補助的にオーナー情報を保持する仕様を追加
特に同作品の複製を見分けるために必須 APIに追加
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
- Parameters:
- repositoryName
- myServer
- repositoryURI
numSorter(val1, val2)
ソート比較関数
カット番号(文字列内の最初の整数クラスタ)を整数化して比較
Defined in: serviceAgent.js.
Defined in: serviceAgent.js.
- Parameters:
- val1
- val2
ServiceNode(serviceName, serviceURL)
Defined in: serviceAgent.js.
- Parameters:
- serviceName
- serviceURL