X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Fzone.cpp;h=30b60e99aa65865a0960afc113e3d5f5fedfbd7f;hb=a44355019e5a27da0d5e5287aae74864e4122e1f;hp=dc60a3a2630f13ccb3b02cd2d72ef8d722412799;hpb=1124a98ce5e1edee1904eeec089976d446601afd;p=r2c2.git diff --git a/source/libr2c2/zone.cpp b/source/libr2c2/zone.cpp index dc60a3a..30b60e9 100644 --- a/source/libr2c2/zone.cpp +++ b/source/libr2c2/zone.cpp @@ -38,6 +38,11 @@ void Zone::set_name(const string &g, const string &q, unsigned n) qualifier = q; number = n; + update_name(); +} + +void Zone::update_name() +{ string full_name = group; if(!qualifier.empty()) { @@ -65,6 +70,11 @@ void Zone::save(list &st) const st.push_back((DataFile::Statement("block"), *i)); } +DataFile::Statement Zone::save_reference() const +{ + return (DataFile::Statement("zone"), group, number); +} + Zone::Loader::Loader(Zone &z): DataFile::ObjectLoader(z) @@ -75,6 +85,11 @@ Zone::Loader::Loader(Zone &z): add("qualifier", &Zone::qualifier); } +void Zone::Loader::finish() +{ + obj.update_name(); +} + void Zone::Loader::block(unsigned b) { Block &blk = obj.layout.get_block(b);