14 #ifndef _XmlController_H_
15 #define _XmlController_H_
79 void clearDataSourceMap ();
82 void fillNTupleMap ();
86 void fillTupleCutMap (
const std::vector < const ViewBase * > & views );
91 void saveToDocument (
const std::vector < const ViewBase * > & selviews );
94 const std::list < ViewBase * > &
96 const std::vector < const ViewBase * > & views );
108 std::map < const DataSource *, XmlElement * >
m_data;
152 virtual void newDocument (
const std::string & name ) = 0;
160 virtual Status openDocument (
const std::string & filename );
165 virtual Status openNTuples ( );
172 void getTupleCuts ();
175 virtual void getViews ( );
198 virtual void createDocument (
const std::string & doc_name );
201 virtual bool fileExists (
const std::string & filename )
const = 0;
206 Status openFile (
const std::string & filename );
210 virtual const std::list < ViewBase * > & getViews (
ViewFactory * );
214 bool areDataSourcesSaved (
const std::vector < const ViewBase * > & views );
220 serializeViews (
const std::vector < const ViewBase * > & views );
223 bool isPasteboardEmpty ();
230 const std::list < ViewBase * > &
232 const std::vector < const ViewBase * > & views );
236 const std::list < ViewBase * > &
238 const std::vector < const ViewBase * > & views );
244 void saveToPasteboard (
const std::vector < const ViewBase * > & );
250 void saveToSelectionCopy (
const std::vector < const ViewBase * > & views );
254 Status saveToFile (
const std::vector < const ViewBase * > & views,
255 const std::string & filename );
262 void addViews (
const std::vector < const ViewBase * > & views );
278 const DataSource * getDataSource (
int ref_id );
282 const TupleCut * getTupleCut (
int ref_id );
285 DataRep * getDataRep (
int ref );
294 void registerPlotter (
int id,
PlotterBase * plotter );
298 int getId (
const void * address );
303 std::list < std::string > & getMissingTuples ();
307 virtual Status openUpdatedNTuples ( );
313 #endif // _XmlController_H_
std::map< int, PlotterBase * > m_plotter_map
The mapping from PlotterBase Id to created PlotterBase.
#define MDL_HIPPOPLOT_API
std::list< ViewBase * > m_views
A list of reconstructed views.
ViewBaseXML * m_view
The singleton instance of a ViewBaseXML object.
HiNTupleXML * m_ntuple
The singleton instance of the XML handler for data source.
std::list< std::string > m_missing_tuples
A list of missing NTuples.
A class that is does XML serialization and de-serialization of derived classes of DataRep...
std::map< int, const DataSource * > m_tuple_map
A mapping from XML id to created data sources.
std::map< const void *, int > m_addr_map
The map of memory address to unique integer identifier.
A pure virtual base class of XML element wrapper.
The class expresses a cut on a DataSource, i.e.
A abstract base class for font handling.
The base class for the PlotterBase hierarchy.
A class XML creation and parsing of XmlElement for ViewBase class.
The base class for data representations.
std::map< const DataSource *, XmlElement * > m_data
The map of data sources to XmlElements for the current document.
A singleton class that is does XML serialization and deserialization of derived classes of HiNTuple...
An abstract base class of XML document element wrapper.
std::map< int, const TupleCut * > m_tuple_cut_map
A mapping from XML id to created TupleCut.
XmlDocument * m_selectboard
A copy of a selection.
int m_id
The next integer identifier to be generated.
std::vector< int > m_missing_ids
A vector of the ids in the Xml file of the missing NTuples.
Status
Return codes of opening file.
XmlDocument * m_pasteboard
The pasteboard object.
TupleCutXML * m_tuple_cut_xml
The singleton instance of the XML handler for TupleCut objects.
The abstract base class for a factory that creates objects closely related to the graphics subsystem ...
The abstract base class for views.
static XmlDocument * m_xml_doc
The current document being generated or read.
std::map< const void *, int >::iterator AddrMapIterator_t
The iterator for memory address to unique integer identifier.
XmlElement * m_element
The XmlElement object used to parse the DOM tree.
ViewFactory * m_view_factory
The factory to be used for creating views.
A base class that is the interface between GUI and the XML serialization and deserialization.
std::map< int, DataRep * > m_datarep_map
A mapping from DataRep Id to created DataRep.
DataRepXML * m_datarep_xml
The singleton instance of the DataRepXML object.
Base class for DataSource.
A class that is does XML serialization and de-serialization of derived classes of TupleCut...