aboutsummaryrefslogtreecommitdiff
path: root/examples/cxx/hybrid/binary/cdr/README
blob: 52045f079ae86046284d83dbab68a49716f8d8ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
This example shows how to save/load the C++/Hybrid object model to/from
CDR (Common Data Representation) binary format using ACE CDR streams.
You will need the ACE library installed in order to build and run this
example:

http://www.cs.wustl.edu/~schmidt/ACE.html

The example consists of the following files:

library.xsd
  XML Schema which describes a library of books.

library.xml
  Sample XML instance document.

library.hxx
library.cxx

library-pskel.hxx
library-pskel.cxx
library-pimpl.hxx
library-pimpl.cxx

library-pskel.hxx
library-pskel.cxx
library-pimpl.hxx
library-pimpl.cxx
  Object model (the first pair of files), parser skeletons (the
  second pair), parser implementations (the third pair), serializer
  skeletons (the fourth pair), and serializer implementations (the
  fifth pair). These files are generated by the XSD/e compiler from
  library.xsd. The --generate-parser, --generate-serializer, and 
  --generate-aggregate options were used to request the generation
  of the parsing and serialization code. The --generate-insertion and
  --generate-extraction options were used to generate the insertion
  and extraction operations for the CDR streams.

driver.cxx
  Driver for the example. It first calls the parser that constructs
  the object model from the input XML file. It then saves the object
  model to the CDR representation and loads it back. Finally, the
  driver calls the serializer to serialize the loaded object model
  back to XML.

To run the example on the sample XML instance document simply execute:

$ ./driver library.xml

The example reads from STDIN if input file is not specified:

$ ./driver <library.xml