예제 #1
0
    public void AddSnapshot(PackedMemorySnapshot packed)
    {
        TrackerMode_Base curMode = GetCurrentMode();

        if (curMode == null)
        {
            return;
        }

        var snapshotInfo = new MemSnapshotInfo();

        if (!snapshotInfo.AcceptSnapshot(packed))
        {
            return;
        }

        curMode.AddSnapshot(snapshotInfo);

        if (AutoSaveOnSnapshot)
        {
            if (!curMode.SaveSessionInfo(packed, snapshotInfo.Unpacked))
            {
                Debug.LogErrorFormat("Save Session Info Failed!");
            }
        }
    }
예제 #2
0
    public void AddSnapshot(PackedMemorySnapshot packed)
    {
        try
        {
            TrackerMode_Base curMode = GetCurrentMode();
            if (curMode == null)
            {
                Debug.LogErrorFormat("AddSnapshot() failed. (invalid mode: {0})", curMode);
                return;
            }

            Debug.Log("saving snapshot...");
            if (AutoSaveOnSnapshot)
            {
                if (!curMode.SaveSessionInfo(packed))
                {
                    Debug.LogErrorFormat("Save Session Info Failed!");
                }
            }

            Debug.Log("accepting snapshot...");
            var snapshotInfo = new MemSnapshotInfo();
            if (!snapshotInfo.AcceptSnapshot(packed))
            {
                Debug.LogError("AcceptSnapshot() failed.");
                return;
            }

            Debug.Log("appending snapshot...");
            curMode.AddSnapshot(snapshotInfo);

            //Debug.Log("saving snapshot...");
            if (AutoSaveOnSnapshot)
            {
                if (!curMode.SaveSessionJson(snapshotInfo.Unpacked))
                {
                    Debug.LogErrorFormat("Save Session Json Failed!");
                }
            }

            Debug.Log("appending snapshot. (done)");
        }
        catch (Exception ex)
        {
            Debug.LogException(ex);
        }
    }