1/*
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;
--- 29 unchanged lines hidden (view full) ---
38#define __SERIALIZE_HH__
39
40
41#include <iostream>
42#include <list>
43#include <map>
44#include <vector>
45
46#include "base/types.hh"
47
48class IniFile;
49class Serializable;
50class Checkpoint;
51class SimObject;
52class EventQueue;
53
--- 4 unchanged lines hidden (view full) ---
58 * SimObject shouldn't cause the version number to increase, only changes to
59 * existing objects such as serializing/unserializing more state, changing sizes
60 * of serialized arrays, etc. */
61static const uint64_t gem5CheckpointVersion = 0x000000000000000d;
62
63template <class T>
64void paramOut(std::ostream &os, const std::string &name, const T ¶m);
65
66template <class T>
67void paramIn(Checkpoint *cp, const std::string §ion,
68 const std::string &name, T ¶m);
69
70template <class T>
71bool optParamIn(Checkpoint *cp, const std::string §ion,
72 const std::string &name, T ¶m);
73
74template <class T>
75void arrayParamOut(std::ostream &os, const std::string &name,
76 const T *param, unsigned size);
77
78template <class T>
79void arrayParamOut(std::ostream &os, const std::string &name,
80 const std::vector<T> ¶m);
81
--- 238 unchanged lines hidden ---
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;
--- 29 unchanged lines hidden (view full) ---
38#define __SERIALIZE_HH__
39
40
41#include <iostream>
42#include <list>
43#include <map>
44#include <vector>
45
46#include "base/types.hh"
47
48class IniFile;
49class Serializable;
50class Checkpoint;
51class SimObject;
52class EventQueue;
53
--- 4 unchanged lines hidden (view full) ---
58 * SimObject shouldn't cause the version number to increase, only changes to
59 * existing objects such as serializing/unserializing more state, changing sizes
60 * of serialized arrays, etc. */
61static const uint64_t gem5CheckpointVersion = 0x000000000000000d;
62
63template <class T>
64void paramOut(std::ostream &os, const std::string &name, const T ¶m);
65
66template <class T>
67void paramIn(Checkpoint *cp, const std::string §ion,
68 const std::string &name, T ¶m);
69
70template <class T>
71bool optParamIn(Checkpoint *cp, const std::string §ion,
72 const std::string &name, T ¶m);
73
74template <class T>
75void arrayParamOut(std::ostream &os, const std::string &name,
76 const T *param, unsigned size);
77
78template <class T>
79void arrayParamOut(std::ostream &os, const std::string &name,
80 const std::vector<T> ¶m);
81
--- 238 unchanged lines hidden ---