InsertEdgeDelta.h

Go to the documentation of this file.
00001 
00008 /* Copyright © 2009 James Legg.
00009     This program is free software: you can redistribute it and/or modify
00010     it under the terms of the GNU General Public License as published by
00011     the Free Software Foundation, either version 3 of the License, or
00012     (at your option) any later version.
00013 */
00014 
00015 #ifndef LIBTRACK_DOCUMENT_INSERT_EDGE_DELTA_H
00016 #define LIBTRACK_DOCUMENT_INSERT_EDGE_DELTA_H
00017 
00018 #include "DocumentDelta.h"
00019 
00020 #include "InsertRemoveIdentifier.h"
00021 #include "InsertDelta.h"
00022 #include "RemoveDelta.h"
00023 #include "../path/PathEdge.h"
00024 
00025 namespace Document
00026 {
00027 
00030 class InsertRemoveEdgeIdentifier
00031     :   InsertRemoveIdentifier<std::size_t, Track::PathEdge>
00032 {
00033 public: 
00034     InsertRemoveEdgeIdentifier(Track::PathEdge object);
00035     InsertRemoveEdgeIdentifier(std::size_t edge_index);
00036     
00037     void insert(Track::Track & track, Track::PathEdge object) const;
00038     
00039     Track::PathEdge remove(Track::Track & track) const;
00040 };
00041 
00043 typedef InsertDelta<InsertRemoveEdgeIdentifier, Track::PathEdge> InsertEdgeDelta;
00045 typedef RemoveDelta<InsertRemoveEdgeIdentifier, Track::PathEdge> RemoveEdgeDelta;
00046 
00047 } // namespace Document
00048 
00049 #endif // LIBTRACK_DOCUMENT_INSERT_EDGE_DELTA_H

Get Racer at SourceForge.net. Fast, secure and Free Open Source software downloads

Generated at Mon Sep 6 00:41:11 2010 by Doxygen version 1.4.7 for Racer version svn335.