/** * バイナリログの画像ID情報を読み込む */ private MemIconImages ReadLogImagesBin(UFileStream fs) { MemIconImages _images = new MemIconImages(); // 件数取得 int size = fs.GetInt32(); for (int i = 0; i < size; i++) { // 1件分のログを取得 MemIconImage image = new MemIconImage(); // 名前 image.Name = fs.GetSizeString(); // 画像 int imageSize = fs.GetInt32(); if (imageSize > 0) { byte[] byteImage = fs.GetBytes(imageSize); image.SetByteImage(byteImage); } _images.Add(image); } return(_images); }
/** * バイナリログのレーン情報を読み込む * @input fs: 読み込み元のファイル */ private Lanes ReadLogLanesBin(UFileStream fs) { Lanes _lanes = new Lanes(); // 件数取得 int size = fs.GetInt32(); for (int i = 0; i < size; i++) { // 1件分のログを取得 Lane lane = new Lane(); // ID lane.ID = fs.GetUInt32(); // 名前 lane.Name = fs.GetSizeString(); // 色 lane.Color = fs.GetUInt32(); _lanes.Add(lane); } return(_lanes); }
/** * バイナリログのログID情報を読み込む * */ private LogIDs ReadLogIDsBin(UFileStream fs) { LogIDs _logIds = new LogIDs(); // 件数取得 int size = fs.GetInt32(); for (int i = 0; i < size; i++) { // 1件分のログを取得 LogID logId = new LogID(); // ID logId.ID = fs.GetUInt32(); // 名前 logId.Name = fs.GetSizeString(); // 色 logId.Color = fs.GetUInt32(); // アイコン画像名 // 画像はアイコン画像を読み込んでから設定する logId.ImageName = fs.GetSizeString(); _logIds.Add(logId); } return(_logIds); }
/** * バイナリログの本体部分を取得 * @input fs : ファイルオブジェクト */ private void ReadLogBodyBin(UFileStream fs) { while (!fs.EndOfStream()) { // 件数取得 int logNum = fs.GetInt32(); for (int i = 0; i < logNum; i++) { // 種類を取得 LogType type = (LogType)fs.GetByte(); if (type == LogType.Data) { ReadLogDataBin(fs); } else { ReadLogAreaBin(fs); } } } }