Import: do not export the entire class but only its public methods.
This fixes the warning C4251 for the template classes std::string or std::vector Forum thread: https://forum.freecadweb.org/viewtopic.php?f=10&t=70317
This commit is contained in:
@@ -119,7 +119,7 @@ struct LWPolyDataOut
|
||||
};
|
||||
//********************
|
||||
|
||||
class ImportExport CDxfWrite{
|
||||
class CDxfWrite{
|
||||
private:
|
||||
std::ofstream* m_ofs;
|
||||
bool m_fail;
|
||||
@@ -170,77 +170,77 @@ protected:
|
||||
std::vector<std::string> m_blkRecordList;
|
||||
|
||||
public:
|
||||
CDxfWrite(const char* filepath);
|
||||
~CDxfWrite();
|
||||
ImportExport CDxfWrite(const char* filepath);
|
||||
ImportExport ~CDxfWrite();
|
||||
|
||||
void init(void);
|
||||
void endRun(void);
|
||||
ImportExport void init(void);
|
||||
ImportExport void endRun(void);
|
||||
|
||||
bool Failed(){return m_fail;}
|
||||
ImportExport bool Failed(){return m_fail;}
|
||||
// void setOptions(void);
|
||||
// bool isVersionValid(int vers);
|
||||
std::string getLayerName() { return m_layerName; }
|
||||
void setLayerName(std::string s);
|
||||
void setVersion(int v) { m_version = v;}
|
||||
void setPolyOverride(bool b) { m_polyOverride = b; }
|
||||
void addBlockName(std::string s, std::string blkRecordHandle);
|
||||
ImportExport std::string getLayerName() { return m_layerName; }
|
||||
ImportExport void setLayerName(std::string s);
|
||||
ImportExport void setVersion(int v) { m_version = v;}
|
||||
ImportExport void setPolyOverride(bool b) { m_polyOverride = b; }
|
||||
ImportExport void addBlockName(std::string s, std::string blkRecordHandle);
|
||||
|
||||
void writeLine(const double* s, const double* e);
|
||||
void writePoint(const double*);
|
||||
void writeArc(const double* s, const double* e, const double* c, bool dir);
|
||||
void writeEllipse(const double* c, double major_radius, double minor_radius,
|
||||
ImportExport void writeLine(const double* s, const double* e);
|
||||
ImportExport void writePoint(const double*);
|
||||
ImportExport void writeArc(const double* s, const double* e, const double* c, bool dir);
|
||||
ImportExport void writeEllipse(const double* c, double major_radius, double minor_radius,
|
||||
double rotation, double start_angle, double end_angle, bool endIsCW);
|
||||
void writeCircle(const double* c, double radius );
|
||||
void writeSpline(const SplineDataOut &sd);
|
||||
void writeLWPolyLine(const LWPolyDataOut &pd);
|
||||
void writePolyline(const LWPolyDataOut &pd);
|
||||
void writeVertex(double x, double y, double z);
|
||||
void writeText(const char* text, const double* location1, const double* location2,
|
||||
ImportExport void writeCircle(const double* c, double radius );
|
||||
ImportExport void writeSpline(const SplineDataOut &sd);
|
||||
ImportExport void writeLWPolyLine(const LWPolyDataOut &pd);
|
||||
ImportExport void writePolyline(const LWPolyDataOut &pd);
|
||||
ImportExport void writeVertex(double x, double y, double z);
|
||||
ImportExport void writeText(const char* text, const double* location1, const double* location2,
|
||||
const double height, const int horizJust);
|
||||
void writeLinearDim(const double* textMidPoint, const double* lineDefPoint,
|
||||
ImportExport void writeLinearDim(const double* textMidPoint, const double* lineDefPoint,
|
||||
const double* extLine1, const double* extLine2,
|
||||
const char* dimText, int type);
|
||||
void writeLinearDimBlock(const double* textMidPoint, const double* lineDefPoint,
|
||||
ImportExport void writeLinearDimBlock(const double* textMidPoint, const double* lineDefPoint,
|
||||
const double* extLine1, const double* extLine2,
|
||||
const char* dimText, int type);
|
||||
void writeAngularDim(const double* textMidPoint, const double* lineDefPoint,
|
||||
ImportExport void writeAngularDim(const double* textMidPoint, const double* lineDefPoint,
|
||||
const double* startExt1, const double* endExt1,
|
||||
const double* startExt2, const double* endExt2,
|
||||
const char* dimText);
|
||||
void writeAngularDimBlock(const double* textMidPoint, const double* lineDefPoint,
|
||||
ImportExport void writeAngularDimBlock(const double* textMidPoint, const double* lineDefPoint,
|
||||
const double* startExt1, const double* endExt1,
|
||||
const double* startExt2, const double* endExt2,
|
||||
const char* dimText);
|
||||
void writeRadialDim(const double* centerPoint, const double* textMidPoint,
|
||||
ImportExport void writeRadialDim(const double* centerPoint, const double* textMidPoint,
|
||||
const double* arcPoint,
|
||||
const char* dimText);
|
||||
void writeRadialDimBlock(const double* centerPoint, const double* textMidPoint,
|
||||
ImportExport void writeRadialDimBlock(const double* centerPoint, const double* textMidPoint,
|
||||
const double* arcPoint, const char* dimText);
|
||||
void writeDiametricDim(const double* textMidPoint,
|
||||
ImportExport void writeDiametricDim(const double* textMidPoint,
|
||||
const double* arcPoint1, const double* arcPoint2,
|
||||
const char* dimText);
|
||||
void writeDiametricDimBlock(const double* textMidPoint,
|
||||
ImportExport void writeDiametricDimBlock(const double* textMidPoint,
|
||||
const double* arcPoint1, const double* arcPoint2,
|
||||
const char* dimText);
|
||||
|
||||
void writeDimBlockPreamble();
|
||||
void writeBlockTrailer(void);
|
||||
ImportExport void writeDimBlockPreamble();
|
||||
ImportExport void writeBlockTrailer(void);
|
||||
|
||||
void writeHeaderSection(void);
|
||||
void writeTablesSection(void);
|
||||
void writeBlocksSection(void);
|
||||
void writeEntitiesSection(void);
|
||||
void writeObjectsSection(void);
|
||||
void writeClassesSection(void);
|
||||
ImportExport void writeHeaderSection(void);
|
||||
ImportExport void writeTablesSection(void);
|
||||
ImportExport void writeBlocksSection(void);
|
||||
ImportExport void writeEntitiesSection(void);
|
||||
ImportExport void writeObjectsSection(void);
|
||||
ImportExport void writeClassesSection(void);
|
||||
|
||||
void makeLayerTable(void);
|
||||
void makeBlockRecordTableHead(void);
|
||||
void makeBlockRecordTableBody(void);
|
||||
void makeBlockSectionHead(void);
|
||||
ImportExport void makeLayerTable(void);
|
||||
ImportExport void makeBlockRecordTableHead(void);
|
||||
ImportExport void makeBlockRecordTableBody(void);
|
||||
ImportExport void makeBlockSectionHead(void);
|
||||
};
|
||||
|
||||
// derive a class from this and implement it's virtual functions
|
||||
class ImportExport CDxfRead{
|
||||
class CDxfRead{
|
||||
private:
|
||||
std::ifstream* m_ifs;
|
||||
|
||||
@@ -285,28 +285,28 @@ protected:
|
||||
Aci_t m_aci; // manifest color name or 256 for layer color
|
||||
|
||||
public:
|
||||
CDxfRead(const char* filepath); // this opens the file
|
||||
virtual ~CDxfRead(); // this closes the file
|
||||
ImportExport CDxfRead(const char* filepath); // this opens the file
|
||||
ImportExport virtual ~CDxfRead(); // this closes the file
|
||||
|
||||
bool Failed(){return m_fail;}
|
||||
void DoRead(const bool ignore_errors = false); // this reads the file and calls the following functions
|
||||
ImportExport bool Failed(){return m_fail;}
|
||||
ImportExport void DoRead(const bool ignore_errors = false); // this reads the file and calls the following functions
|
||||
|
||||
double mm( double value ) const;
|
||||
ImportExport double mm( double value ) const;
|
||||
|
||||
bool IgnoreErrors() const { return(m_ignore_errors); }
|
||||
ImportExport bool IgnoreErrors() const { return(m_ignore_errors); }
|
||||
|
||||
virtual void OnReadLine(const double* /*s*/, const double* /*e*/, bool /*hidden*/){}
|
||||
virtual void OnReadPoint(const double* /*s*/){}
|
||||
virtual void OnReadText(const double* /*point*/, const double /*height*/, const char* /*text*/){}
|
||||
virtual void OnReadArc(const double* /*s*/, const double* /*e*/, const double* /*c*/, bool /*dir*/, bool /*hidden*/){}
|
||||
virtual void OnReadCircle(const double* /*s*/, const double* /*c*/, bool /*dir*/, bool /*hidden*/){}
|
||||
virtual void OnReadEllipse(const double* /*c*/, double /*major_radius*/, double /*minor_radius*/, double /*rotation*/, double /*start_angle*/, double /*end_angle*/, bool /*dir*/){}
|
||||
virtual void OnReadSpline(struct SplineData& /*sd*/){}
|
||||
virtual void OnReadInsert(const double* /*point*/, const double* /*scale*/, const char* /*name*/, double /*rotation*/){}
|
||||
virtual void OnReadDimension(const double* /*s*/, const double* /*e*/, const double* /*point*/, double /*rotation*/){}
|
||||
virtual void AddGraphics() const { }
|
||||
ImportExport virtual void OnReadLine(const double* /*s*/, const double* /*e*/, bool /*hidden*/){}
|
||||
ImportExport virtual void OnReadPoint(const double* /*s*/){}
|
||||
ImportExport virtual void OnReadText(const double* /*point*/, const double /*height*/, const char* /*text*/){}
|
||||
ImportExport virtual void OnReadArc(const double* /*s*/, const double* /*e*/, const double* /*c*/, bool /*dir*/, bool /*hidden*/){}
|
||||
ImportExport virtual void OnReadCircle(const double* /*s*/, const double* /*c*/, bool /*dir*/, bool /*hidden*/){}
|
||||
ImportExport virtual void OnReadEllipse(const double* /*c*/, double /*major_radius*/, double /*minor_radius*/, double /*rotation*/, double /*start_angle*/, double /*end_angle*/, bool /*dir*/){}
|
||||
ImportExport virtual void OnReadSpline(struct SplineData& /*sd*/){}
|
||||
ImportExport virtual void OnReadInsert(const double* /*point*/, const double* /*scale*/, const char* /*name*/, double /*rotation*/){}
|
||||
ImportExport virtual void OnReadDimension(const double* /*s*/, const double* /*e*/, const double* /*point*/, double /*rotation*/){}
|
||||
ImportExport virtual void AddGraphics() const { }
|
||||
|
||||
std::string LayerName() const;
|
||||
ImportExport std::string LayerName() const;
|
||||
|
||||
};
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user