Ejemplo n.º 1
0
        /**
         * バイナリログの画像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);
        }
Ejemplo n.º 2
0
        /**
         * バイナリログのレーン情報を読み込む
         * @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);
        }
Ejemplo n.º 3
0
        /**
         * バイナリログのログ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);
        }
Ejemplo n.º 4
0
        /**
         * バイナリログの本体部分を取得
         * @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);
                    }
                }
            }
        }