QCAD
Open Source 2D CAD
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
dl_entities.h
Go to the documentation of this file.
1 /****************************************************************************
2 ** Copyright (C) 2001-2013 RibbonSoft, GmbH. All rights reserved.
3 **
4 ** This file is part of the dxflib project.
5 **
6 ** This file is free software; you can redistribute it and/or modify
7 ** it under the terms of the GNU General Public License as published by
8 ** the Free Software Foundation; either version 2 of the License, or
9 ** (at your option) any later version.
10 **
11 ** Licensees holding valid dxflib Professional Edition licenses may use
12 ** this file in accordance with the dxflib Commercial License
13 ** Agreement provided with the Software.
14 **
15 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
16 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17 **
18 ** See http://www.ribbonsoft.com for further details.
19 **
20 ** Contact info@ribbonsoft.com if any conditions of this licensing are
21 ** not clear to you.
22 **
23 **********************************************************************/
24 
25 #ifndef DL_ENTITIES_H
26 #define DL_ENTITIES_H
27 
28 #include "dl_global.h"
29 
30 #include <string>
31 #include <vector>
32 
41  DL_LayerData(const std::string& lName,
42  int lFlags) {
43  name = lName;
44  flags = lFlags;
45  }
46 
48  std::string name;
50  int flags;
51 };
52 
53 
54 
63  DL_BlockData(const std::string& bName,
64  int bFlags,
65  double bbpx, double bbpy, double bbpz) {
66  name = bName;
67  flags = bFlags;
68  bpx = bbpx;
69  bpy = bbpy;
70  bpz = bbpz;
71  }
72 
74  std::string name;
76  int flags;
78  double bpx;
80  double bpy;
82  double bpz;
83 };
84 
85 
95  const std::string& name,
96  const std::string& description,
97  int flags,
98  int numberOfDashes,
99  double patternLength,
100  double* pattern = NULL
101  )
102  : name(name),
103  description(description),
104  flags(flags),
105  numberOfDashes(numberOfDashes),
106  patternLength(patternLength),
107  pattern(pattern)
108  {}
109 
111  std::string name;
113  std::string description;
115  int flags;
121  double* pattern;
122 };
123 
124 
125 
135  const std::string& name,
136  int flags,
137  double fixedTextHeight,
138  double widthFactor,
139  double obliqueAngle,
140  int textGenerationFlags,
141  double lastHeightUsed,
142  const std::string& primaryFontFile,
143  const std::string& bigFontFile
144  )
145  : name(name),
146  flags(flags),
147  fixedTextHeight(fixedTextHeight),
148  widthFactor(widthFactor),
149  obliqueAngle(obliqueAngle),
150  textGenerationFlags(textGenerationFlags),
151  lastHeightUsed(lastHeightUsed),
152  primaryFontFile(primaryFontFile),
153  bigFontFile(bigFontFile),
154  bold(false),
155  italic(false) {
156  }
157 
158  bool operator==(const DL_StyleData& other) {
159  // ignore lastHeightUsed:
160  return (name==other.name &&
161  flags==other.flags &&
162  fixedTextHeight==other.fixedTextHeight &&
163  widthFactor==other.widthFactor &&
164  obliqueAngle==other.obliqueAngle &&
165  textGenerationFlags==other.textGenerationFlags &&
166  primaryFontFile==other.primaryFontFile &&
167  bigFontFile==other.bigFontFile);
168  }
169 
171  std::string name;
173  int flags;
177  double widthFactor;
179  double obliqueAngle;
185  std::string primaryFontFile;
187  std::string bigFontFile;
188 
189  bool bold;
190  bool italic;
191 };
192 
201  DL_PointData(double px=0.0, double py=0.0, double pz=0.0) {
202  x = px;
203  y = py;
204  z = pz;
205  }
206 
208  double x;
210  double y;
212  double z;
213 };
214 
215 
216 
225  DL_LineData(double lx1, double ly1, double lz1,
226  double lx2, double ly2, double lz2) {
227  x1 = lx1;
228  y1 = ly1;
229  z1 = lz1;
230 
231  x2 = lx2;
232  y2 = ly2;
233  z2 = lz2;
234  }
235 
237  double x1;
239  double y1;
241  double z1;
242 
244  double x2;
246  double y2;
248  double z2;
249 };
250 
259  DL_XLineData(double bx, double by, double bz,
260  double dx, double dy, double dz) :
261  bx(bx), by(by), bz(bz),
262  dx(dx), dy(dy), dz(dz) {
263  }
264 
266  double bx;
268  double by;
270  double bz;
271 
273  double dx;
275  double dy;
277  double dz;
278 };
279 
288  DL_RayData(double bx, double by, double bz,
289  double dx, double dy, double dz) :
290  bx(bx), by(by), bz(bz),
291  dx(dx), dy(dy), dz(dz) {
292  }
293 
295  double bx;
297  double by;
299  double bz;
300 
302  double dx;
304  double dy;
306  double dz;
307 };
308 
309 
310 
319  DL_ArcData(double acx, double acy, double acz,
320  double aRadius,
321  double aAngle1, double aAngle2) {
322 
323  cx = acx;
324  cy = acy;
325  cz = acz;
326  radius = aRadius;
327  angle1 = aAngle1;
328  angle2 = aAngle2;
329  }
330 
332  double cx;
334  double cy;
336  double cz;
337 
339  double radius;
341  double angle1;
343  double angle2;
344 };
345 
346 
347 
356  DL_CircleData(double acx, double acy, double acz,
357  double aRadius) {
358 
359  cx = acx;
360  cy = acy;
361  cz = acz;
362  radius = aRadius;
363  }
364 
366  double cx;
368  double cy;
370  double cz;
371 
373  double radius;
374 };
375 
376 
377 
386  DL_PolylineData(int pNumber, int pMVerteces, int pNVerteces, int pFlags) {
387  number = pNumber;
388  m = pMVerteces;
389  n = pNVerteces;
390  flags = pFlags;
391  }
392 
394  unsigned int number;
395 
397  unsigned int m;
398 
400  unsigned int n;
401 
403  int flags;
404 };
405 
406 
407 
416  DL_VertexData(double px=0.0, double py=0.0, double pz=0.0,
417  double pBulge=0.0) {
418  x = px;
419  y = py;
420  z = pz;
421  bulge = pBulge;
422  }
423 
425  double x;
427  double y;
429  double z;
432  double bulge;
433 };
434 
435 
441  thickness = 0.0;
442  for (int i=0; i<4; i++) {
443  x[i] = 0.0;
444  y[i] = 0.0;
445  z[i] = 0.0;
446  }
447  }
448 
453  DL_TraceData(double sx1, double sy1, double sz1,
454  double sx2, double sy2, double sz2,
455  double sx3, double sy3, double sz3,
456  double sx4, double sy4, double sz4,
457  double sthickness=0.0) {
458 
459  thickness = sthickness;
460 
461  x[0] = sx1;
462  y[0] = sy1;
463  z[0] = sz1;
464 
465  x[1] = sx2;
466  y[1] = sy2;
467  z[1] = sz2;
468 
469  x[2] = sx3;
470  y[2] = sy3;
471  z[2] = sz3;
472 
473  x[3] = sx4;
474  y[3] = sy4;
475  z[3] = sz4;
476  }
477 
479  double thickness;
480 
482  double x[4];
483  double y[4];
484  double z[4];
485 };
486 
487 
488 
489 
490 
495 
496 
501 
502 
511  DL_SplineData(int degree,
512  int nKnots,
513  int nControl,
514  int nFit,
515  int flags) :
516  degree(degree),
517  nKnots(nKnots),
518  nControl(nControl),
519  nFit(nFit),
520  flags(flags) {
521  }
522 
524  unsigned int degree;
525 
527  unsigned int nKnots;
528 
530  unsigned int nControl;
531 
533  unsigned int nFit;
534 
536  int flags;
537 
541  double tangentEndX;
542  double tangentEndY;
543  double tangentEndZ;
544 };
545 
546 
547 
557  DL_KnotData(double pk) {
558  k = pk;
559  }
560 
562  double k;
563 };
564 
565 
566 
575  DL_ControlPointData(double px, double py, double pz, double weight) {
576  x = px;
577  y = py;
578  z = pz;
579  w = weight;
580  }
581 
583  double x;
585  double y;
587  double z;
589  double w;
590 };
591 
592 
593 
602  DL_FitPointData(double x, double y, double z) : x(x), y(y), z(z) {}
603 
605  double x;
607  double y;
609  double z;
610 };
611 
612 
613 
622  DL_EllipseData(double cx, double cy, double cz,
623  double mx, double my, double mz,
624  double ratio,
625  double angle1, double angle2)
626  : cx(cx),
627  cy(cy),
628  cz(cz),
629  mx(mx),
630  my(my),
631  mz(mz),
632  ratio(ratio),
633  angle1(angle1),
634  angle2(angle2) {
635  }
636 
638  double cx;
640  double cy;
642  double cz;
643 
645  double mx;
647  double my;
649  double mz;
650 
652  double ratio;
654  double angle1;
656  double angle2;
657 };
658 
659 
660 
669  DL_InsertData(const std::string& name,
670  double ipx, double ipy, double ipz,
671  double sx, double sy, double sz,
672  double angle,
673  int cols, int rows,
674  double colSp, double rowSp) :
675  name(name),
676  ipx(ipx), ipy(ipy), ipz(ipz),
677  sx(sx), sy(sy), sz(sz),
678  angle(angle),
679  cols(cols), rows(rows),
680  colSp(colSp), rowSp(rowSp) {
681  }
682 
684  std::string name;
686  double ipx;
688  double ipy;
690  double ipz;
692  double sx;
694  double sy;
696  double sz;
698  double angle;
700  int cols;
702  int rows;
704  double colSp;
706  double rowSp;
707 };
708 
709 
710 
719  DL_MTextData(double ipx, double ipy, double ipz,
720  double dirx, double diry, double dirz,
721  double height, double width,
722  int attachmentPoint,
723  int drawingDirection,
724  int lineSpacingStyle,
725  double lineSpacingFactor,
726  const std::string& text,
727  const std::string& style,
728  double angle) :
729  ipx(ipx), ipy(ipy), ipz(ipz),
730  dirx(dirx), diry(diry), dirz(dirz),
731  height(height), width(width),
732  attachmentPoint(attachmentPoint),
733  drawingDirection(drawingDirection),
734  lineSpacingStyle(lineSpacingStyle),
735  lineSpacingFactor(lineSpacingFactor),
736  text(text),
737  style(style),
738  angle(angle) {
739 
740  }
741 
743  double ipx;
745  double ipy;
747  double ipz;
749  double dirx;
751  double diry;
753  double dirz;
755  double height;
757  double width;
783  std::string text;
785  std::string style;
787  double angle;
788 };
789 
790 
791 
800  DL_TextData(double ipx, double ipy, double ipz,
801  double apx, double apy, double apz,
802  double height, double xScaleFactor,
803  int textGenerationFlags,
804  int hJustification,
805  int vJustification,
806  const std::string& text,
807  const std::string& style,
808  double angle)
809  : ipx(ipx), ipy(ipy), ipz(ipz),
810  apx(apx), apy(apy), apz(apz),
811  height(height), xScaleFactor(xScaleFactor),
812  textGenerationFlags(textGenerationFlags),
813  hJustification(hJustification),
814  vJustification(vJustification),
815  text(text),
816  style(style),
817  angle(angle) {
818  }
819 
821  double ipx;
823  double ipy;
825  double ipz;
826 
828  double apx;
830  double apy;
832  double apz;
833 
835  double height;
837  double xScaleFactor;
855  std::string text;
857  std::string style;
859  double angle;
860 };
861 
862 
867  DL_AttributeData(const DL_TextData& tData, const std::string& tag)
868  : DL_TextData(tData), tag(tag) {
869 
870  }
871 
876  DL_AttributeData(double ipx, double ipy, double ipz,
877  double apx, double apy, double apz,
878  double height, double xScaleFactor,
879  int textGenerationFlags,
880  int hJustification,
881  int vJustification,
882  const std::string& tag,
883  const std::string& text,
884  const std::string& style,
885  double angle)
886  : DL_TextData(ipx, ipy, ipz,
887  apx, apy, apz,
888  height, xScaleFactor,
889  textGenerationFlags,
890  hJustification,
891  vJustification,
892  text,
893  style,
894  angle),
895  tag(tag) {
896  }
897 
899  std::string tag;
900 };
901 
902 
911  DL_DimensionData(double dpx, double dpy, double dpz,
912  double mpx, double mpy, double mpz,
913  int type,
914  int attachmentPoint,
915  int lineSpacingStyle,
916  double lineSpacingFactor,
917  const std::string& text,
918  const std::string& style,
919  double angle,
920  double linearFactor = 1.0) :
921  dpx(dpx), dpy(dpy), dpz(dpz),
922  mpx(mpx), mpy(mpy), mpz(mpz),
923  type(type),
924  attachmentPoint(attachmentPoint),
925  lineSpacingStyle(lineSpacingStyle),
926  lineSpacingFactor(lineSpacingFactor),
927  text(text),
928  style(style),
929  angle(angle),
930  linearFactor(linearFactor) {
931 
932  }
933 
935  double dpx;
937  double dpy;
939  double dpz;
941  double mpx;
943  double mpy;
945  double mpz;
965  int type;
991  std::string text;
993  std::string style;
998  double angle;
1003 };
1004 
1005 
1006 
1015  DL_DimAlignedData(double depx1, double depy1, double depz1,
1016  double depx2, double depy2, double depz2) {
1017 
1018  epx1 = depx1;
1019  epy1 = depy1;
1020  epz1 = depz1;
1021 
1022  epx2 = depx2;
1023  epy2 = depy2;
1024  epz2 = depz2;
1025  }
1026 
1028  double epx1;
1030  double epy1;
1032  double epz1;
1033 
1035  double epx2;
1037  double epy2;
1039  double epz2;
1040 };
1041 
1042 
1043 
1052  DL_DimLinearData(double ddpx1, double ddpy1, double ddpz1,
1053  double ddpx2, double ddpy2, double ddpz2,
1054  double dAngle, double dOblique) {
1055 
1056  dpx1 = ddpx1;
1057  dpy1 = ddpy1;
1058  dpz1 = ddpz1;
1059 
1060  dpx2 = ddpx2;
1061  dpy2 = ddpy2;
1062  dpz2 = ddpz2;
1063 
1064  angle = dAngle;
1065  oblique = dOblique;
1066  }
1067 
1069  double dpx1;
1071  double dpy1;
1073  double dpz1;
1074 
1076  double dpx2;
1078  double dpy2;
1080  double dpz2;
1081 
1083  double angle;
1085  double oblique;
1086 };
1087 
1088 
1089 
1098  DL_DimRadialData(double ddpx, double ddpy, double ddpz, double dleader) {
1099  dpx = ddpx;
1100  dpy = ddpy;
1101  dpz = ddpz;
1102 
1103  leader = dleader;
1104  }
1105 
1107  double dpx;
1109  double dpy;
1111  double dpz;
1112 
1114  double leader;
1115 };
1116 
1117 
1118 
1127  DL_DimDiametricData(double ddpx, double ddpy, double ddpz, double dleader) {
1128  dpx = ddpx;
1129  dpy = ddpy;
1130  dpz = ddpz;
1131 
1132  leader = dleader;
1133  }
1134 
1136  double dpx;
1138  double dpy;
1140  double dpz;
1141 
1143  double leader;
1144 };
1145 
1146 
1147 
1156  DL_DimAngularData(double ddpx1, double ddpy1, double ddpz1,
1157  double ddpx2, double ddpy2, double ddpz2,
1158  double ddpx3, double ddpy3, double ddpz3,
1159  double ddpx4, double ddpy4, double ddpz4) {
1160 
1161  dpx1 = ddpx1;
1162  dpy1 = ddpy1;
1163  dpz1 = ddpz1;
1164 
1165  dpx2 = ddpx2;
1166  dpy2 = ddpy2;
1167  dpz2 = ddpz2;
1168 
1169  dpx3 = ddpx3;
1170  dpy3 = ddpy3;
1171  dpz3 = ddpz3;
1172 
1173  dpx4 = ddpx4;
1174  dpy4 = ddpy4;
1175  dpz4 = ddpz4;
1176  }
1177 
1179  double dpx1;
1181  double dpy1;
1183  double dpz1;
1184 
1186  double dpx2;
1188  double dpy2;
1190  double dpz2;
1191 
1193  double dpx3;
1195  double dpy3;
1197  double dpz3;
1198 
1200  double dpx4;
1202  double dpy4;
1204  double dpz4;
1205 };
1206 
1207 
1216  DL_DimAngular3PData(double ddpx1, double ddpy1, double ddpz1,
1217  double ddpx2, double ddpy2, double ddpz2,
1218  double ddpx3, double ddpy3, double ddpz3) {
1219 
1220  dpx1 = ddpx1;
1221  dpy1 = ddpy1;
1222  dpz1 = ddpz1;
1223 
1224  dpx2 = ddpx2;
1225  dpy2 = ddpy2;
1226  dpz2 = ddpz2;
1227 
1228  dpx3 = ddpx3;
1229  dpy3 = ddpy3;
1230  dpz3 = ddpz3;
1231  }
1232 
1234  double dpx1;
1236  double dpy1;
1238  double dpz1;
1239 
1241  double dpx2;
1243  double dpy2;
1245  double dpz2;
1246 
1248  double dpx3;
1250  double dpy3;
1252  double dpz3;
1253 };
1254 
1255 
1256 
1265  DL_DimOrdinateData(double ddpx1, double ddpy1, double ddpz1,
1266  double ddpx2, double ddpy2, double ddpz2,
1267  bool dxtype) {
1268 
1269  dpx1 = ddpx1;
1270  dpy1 = ddpy1;
1271  dpz1 = ddpz1;
1272 
1273  dpx2 = ddpx2;
1274  dpy2 = ddpy2;
1275  dpz2 = ddpz2;
1276 
1277  xtype = dxtype;
1278  }
1279 
1281  double dpx1;
1283  double dpy1;
1285  double dpz1;
1286 
1288  double dpx2;
1290  double dpy2;
1292  double dpz2;
1293 
1295  bool xtype;
1296 };
1297 
1298 
1299 
1308  DL_LeaderData(int lArrowHeadFlag,
1309  int lLeaderPathType,
1310  int lLeaderCreationFlag,
1311  int lHooklineDirectionFlag,
1312  int lHooklineFlag,
1313  double lTextAnnotationHeight,
1314  double lTextAnnotationWidth,
1315  int lNumber) {
1316 
1317  arrowHeadFlag = lArrowHeadFlag;
1318  leaderPathType = lLeaderPathType;
1319  leaderCreationFlag = lLeaderCreationFlag;
1320  hooklineDirectionFlag = lHooklineDirectionFlag;
1321  hooklineFlag = lHooklineFlag;
1322  textAnnotationHeight = lTextAnnotationHeight;
1323  textAnnotationWidth = lTextAnnotationWidth;
1324  number = lNumber;
1325  }
1326 
1342  int number;
1343 };
1344 
1345 
1346 
1355  DL_LeaderVertexData(double px=0.0, double py=0.0, double pz=0.0) {
1356  x = px;
1357  y = py;
1358  z = pz;
1359  }
1360 
1362  double x;
1364  double y;
1366  double z;
1367 };
1368 
1369 
1370 
1379 
1384  DL_HatchData(int numLoops,
1385  bool solid,
1386  double scale,
1387  double angle,
1388  const std::string& pattern,
1389  double originX = 0.0,
1390  double originY = 0.0) :
1391  numLoops(numLoops),
1392  solid(solid),
1393  scale(scale),
1394  angle(angle),
1395  pattern(pattern),
1396  originX(originX),
1397  originY(originY) {
1398 
1399  }
1400 
1404  bool solid;
1406  double scale;
1408  double angle;
1410  std::string pattern;
1412  double originX;
1413  double originY;
1414 };
1415 
1416 
1417 
1430  DL_HatchLoopData(int hNumEdges) {
1431  numEdges = hNumEdges;
1432  }
1433 
1436 };
1437 
1438 
1439 
1447  DL_HatchEdgeData() : defined(false), x1(0.0), y1(0.0), x2(0.0), y2(0.0) {
1448  }
1449 
1454  DL_HatchEdgeData(double x1, double y1,
1455  double x2, double y2) :
1456  defined(true),
1457  type(1),
1458  x1(x1),
1459  y1(y1),
1460  x2(x2),
1461  y2(y2) {
1462  }
1463 
1468  DL_HatchEdgeData(double cx, double cy,
1469  double radius,
1470  double angle1, double angle2,
1471  bool ccw) :
1472  defined(true),
1473  type(2),
1474  cx(cx),
1475  cy(cy),
1476  radius(radius),
1477  angle1(angle1),
1478  angle2(angle2),
1479  ccw(ccw) {
1480  }
1481 
1486  DL_HatchEdgeData(double cx, double cy,
1487  double mx, double my,
1488  double ratio,
1489  double angle1, double angle2,
1490  bool ccw) :
1491  defined(true),
1492  type(3),
1493  cx(cx),
1494  cy(cy),
1495  angle1(angle1),
1496  angle2(angle2),
1497  ccw(ccw),
1498  mx(mx),
1499  my(my),
1500  ratio(ratio) {
1501  }
1502 
1507  DL_HatchEdgeData(unsigned int degree,
1508  bool rational,
1509  bool periodic,
1510  unsigned int nKnots,
1511  unsigned int nControl,
1512  unsigned int nFit,
1513  const std::vector<double>& knots,
1514  const std::vector<std::vector<double> >& controlPoints,
1515  const std::vector<std::vector<double> >& fitPoints,
1516  const std::vector<double>& weights,
1517  double startTangentX,
1518  double startTangentY,
1519  double endTangentX,
1520  double endTangentY) :
1521  defined(true),
1522  type(4),
1523  degree(degree),
1524  rational(rational),
1525  periodic(periodic),
1526  nKnots(nKnots),
1527  nControl(nControl),
1528  nFit(nFit),
1529  controlPoints(controlPoints),
1530  knots(knots),
1531  weights(weights),
1532  fitPoints(fitPoints),
1533  startTangentX(startTangentX),
1534  startTangentY(startTangentY),
1535  endTangentX(endTangentX),
1536  endTangentY(endTangentY) {
1537  }
1538 
1542  bool defined;
1543 
1547  int type;
1548 
1549  // line edges:
1550 
1552  double x1;
1554  double y1;
1556  double x2;
1558  double y2;
1559 
1561  double cx;
1563  double cy;
1565  double radius;
1567  double angle1;
1569  double angle2;
1571  bool ccw;
1572 
1574  double mx;
1576  double my;
1578  double ratio;
1579 
1580 
1582  unsigned int degree;
1583  bool rational;
1584  bool periodic;
1586  unsigned int nKnots;
1588  unsigned int nControl;
1590  unsigned int nFit;
1591 
1592  std::vector<std::vector<double> > controlPoints;
1593  std::vector<double> knots;
1594  std::vector<double> weights;
1595  std::vector<std::vector<double> > fitPoints;
1596 
1599 
1600  double endTangentX;
1601  double endTangentY;
1602 
1604  std::vector<std::vector<double> > vertices;
1605  //bool closed;
1606 };
1607 
1608 
1609 
1618  DL_ImageData(const std::string& iref,
1619  double iipx, double iipy, double iipz,
1620  double iux, double iuy, double iuz,
1621  double ivx, double ivy, double ivz,
1622  int iwidth, int iheight,
1623  int ibrightness, int icontrast, int ifade) {
1624  ref = iref;
1625  ipx = iipx;
1626  ipy = iipy;
1627  ipz = iipz;
1628  ux = iux;
1629  uy = iuy;
1630  uz = iuz;
1631  vx = ivx;
1632  vy = ivy;
1633  vz = ivz;
1634  width = iwidth;
1635  height = iheight;
1636  brightness = ibrightness;
1637  contrast = icontrast;
1638  fade = ifade;
1639  }
1640 
1643  std::string ref;
1645  double ipx;
1647  double ipy;
1649  double ipz;
1651  double ux;
1653  double uy;
1655  double uz;
1657  double vx;
1659  double vy;
1661  double vz;
1663  int width;
1665  int height;
1671  int fade;
1672 };
1673 
1674 
1675 
1684  DL_ImageDefData(const std::string& iref,
1685  const std::string& ifile) {
1686  ref = iref;
1687  file = ifile;
1688  }
1689 
1692  std::string ref;
1693 
1695  std::string file;
1696 };
1697 
1698 
1699 
1704  DL_DictionaryData(const std::string& handle) : handle(handle) {}
1705  std::string handle;
1706 };
1707 
1708 
1709 
1714  DL_DictionaryEntryData(const std::string& name, const std::string& handle) :
1715  name(name), handle(handle) {}
1716 
1717  std::string name;
1718  std::string handle;
1719 };
1720 
1721 #endif
1722 
1723 // EOF