Bitstream Interpretation Library (BIL)  0.1
Public Member Functions
bil::XDLParser Class Reference

Parser for XDL text file format. More...

#include <xdl/parser/XDLParser.hpp>

List of all members.

Public Member Functions

 XDLParser ()
 Constructs a new XDLParser instance.
 XDLParser::~XDLParser ()
 Destructs a XDLParser instance.
void parseHeader (std::istream &inputStream, Design &design)
 Parses the XDL data out of the stream.
void parseBody (const Device &device)
 Parses the XDL data out of the stream.

Detailed Description

Parser for XDL text file format.

This parser is able to read in XDL design files and store their data into an Design structure. It checks the syntax of given data completely, but does not check its semantics. Out of the known XDL constructs it can not parse module definitions and modules (not needed at the moment).

Definition at line 32 of file XDLParser.hpp.


Constructor & Destructor Documentation

XDLParser::XDLParser ( )

Constructs a new XDLParser instance.

Definition at line 13 of file XDLParser.cpp.

bil::XDLParser::XDLParser::~XDLParser ( )

Destructs a XDLParser instance.


Member Function Documentation

void XDLParser::parseHeader ( std::istream &  inputStream,
Design design 
)

Parses the XDL data out of the stream.

Parses only the XDL header and fills the design with name, target device name, NCD version string, and attribute string. For parsing the remainder of the XDL, call parseBody.

Parameters:
inputStreamStream to read from.
designDesign instance to fill with data.
Exceptions:
.

Definition at line 30 of file XDLParser.cpp.

void XDLParser::parseBody ( const Device device)

Parses the XDL data out of the stream.

Should be called after parseHeader. Uses the in the first call given input stream and design. The device should match the target device of the XDL, in order to successfully parse.

Parameters:
deviceDevice the XDL to parse is for.
Exceptions:
.

Definition at line 38 of file XDLParser.cpp.


The documentation for this class was generated from the following files: