ca98cc237d
[SVN r41365]
46 lines
1.1 KiB
C++
46 lines
1.1 KiB
C++
/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
|
|
//
|
|
// demo_xml_load.cpp
|
|
//
|
|
// (C) Copyright 2002-4 Robert Ramey - http://www.rrsd.com .
|
|
// Use, modification and distribution is subject to the Boost Software
|
|
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
|
|
// http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
#include <iostream>
|
|
#include <string>
|
|
#include <boost/archive/tmpdir.hpp>
|
|
|
|
#include <boost/archive/xml_iarchive.hpp>
|
|
|
|
#include "demo_gps.hpp"
|
|
|
|
void
|
|
restore_schedule(bus_schedule &s, const char * filename)
|
|
{
|
|
// open the archive
|
|
std::ifstream ifs(filename);
|
|
assert(ifs.good());
|
|
boost::archive::xml_iarchive ia(ifs);
|
|
|
|
// restore the schedule from the archive
|
|
ia >> BOOST_SERIALIZATION_NVP(s);
|
|
}
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
// make a new schedule
|
|
bus_schedule new_schedule;
|
|
|
|
std::string filename(boost::archive::tmpdir());
|
|
filename += "/demo_save.xml";
|
|
|
|
restore_schedule(new_schedule, filename.c_str());
|
|
|
|
// and display
|
|
std::cout << "\nrestored schedule";
|
|
std::cout << new_schedule;
|
|
|
|
return 0;
|
|
}
|