|
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F>ļ<EFBFBD>: dfPluginBase.h
|
|
|
|
|
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
|
|
|
|
|
|
// ˫<><CBAB><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD><D3BF>ļ<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD>壬<EFBFBD>ö<EFBFBD><C3B6>岻<EFBFBD>ܸ<EFBFBD><DCB8><EFBFBD>
|
|
|
|
|
|
// <20>ɸýӿ<C3BD><D3BF>ļ<EFBFBD><C4BC>γɵ<CEB3>DLL<4C>⣬<EFBFBD><E2A3AC>Ҫ<EFBFBD><D2AA><EFBFBD>Ƶ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ¼<C4BF>µ<EFBFBD>pluginĿ¼<C4BF>²<EFBFBD><C2B2><EFBFBD>ʹ<EFBFBD><CAB9>
|
|
|
|
|
|
// ʹ<><CAB9>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>ļ<EFBFBD>|<7C>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>д<D0B4><F2BFAAA1><EFBFBD><EFBFBD>ѡ<EEA3AC><D1A1><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ļ<EFBFBD>
|
|
|
|
|
|
// <09>Ϳɽ<CDBF><C9BD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>д<D0B4>
|
|
|
|
|
|
//
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д: 2009-4-16
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
#if !defined ( __DF_PLUGIN_FORMAT_BASE_H__ )
|
|
|
|
|
|
#define __DF_PLUGIN_FORMAT_BASE_H__
|
|
|
|
|
|
|
|
|
|
|
|
namespace NPluginFormat
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
namespace NPluginFormatElements
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
struct dfPluginFormatInfo
|
|
|
|
|
|
{
|
|
|
|
|
|
//<2F>ɶ<EFBFBD>ȡ<EFBFBD><C8A1>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
short m_stMajor; //major version (e.g. 1.xx)
|
|
|
|
|
|
short m_stMinor; //minor version (e.g. x.12)
|
|
|
|
|
|
|
|
|
|
|
|
BOOL m_bCanRead; //<2F>Ƿ<EFBFBD><C7B7>ɶ<EFBFBD><C9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
|
|
|
|
|
BOOL m_bCanWrite; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
const char* m_strName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
const char* m_strDescription; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD>ڵ<EFBFBD>
|
|
|
|
|
|
const char* m_strExtension; //<2F><>չ<EFBFBD><D5B9>,<2C><>ʽ<EFBFBD>磺*.dfd;*.dfg;*.dfb
|
|
|
|
|
|
};
|
|
|
|
|
|
struct dfPluginFormat
|
|
|
|
|
|
{
|
|
|
|
|
|
dfPluginFormatInfo* m_pFormatInfo;
|
|
|
|
|
|
int m_nFormatNum;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD>ʹ<EFBFBD>õ<EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
enum enumPlineType
|
|
|
|
|
|
{
|
|
|
|
|
|
plineDefault = 0, //ȱʡ
|
|
|
|
|
|
plineSolid = 1, //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
plineClose = 2, //<2F>պ<EFBFBD><D5BA><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
plineBezier = 3, //B<><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
plineSpline = 4, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
plineTransparent = 5, //<><CDB8><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
plineBezierSolid = 6, //B<><42><EFBFBD><EFBFBD>+<2B><><EFBFBD><EFBFBD>
|
|
|
|
|
|
plineBezierClose = 7, //B<><42><EFBFBD><EFBFBD>+<2B>պ<EFBFBD>
|
|
|
|
|
|
plineSplineSolid = 8, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+<2B><><EFBFBD><EFBFBD>
|
|
|
|
|
|
plineSplineClose = 9, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+<2B>պ<EFBFBD>
|
|
|
|
|
|
plineTransSolid = 10 //<><CDB8>+<2B><><EFBFBD><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginElement(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset(m_strName, 0, sizeof(char)*256);
|
|
|
|
|
|
m_color=0;
|
|
|
|
|
|
m_version=1; //Ϊ<>˺<EFBFBD><CBBA>ڵ<EFBFBD><DAB5><EFBFBD>չ
|
|
|
|
|
|
m_dWidth=0;
|
|
|
|
|
|
}
|
|
|
|
|
|
char m_strName[256]; //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
long m_color; //<2F><>ɫ
|
|
|
|
|
|
int m_version; //<2F>汾<EFBFBD><E6B1BE>
|
|
|
|
|
|
double m_dWidth; //<2F><><EFBFBD>߿<EFBFBD><DFBF>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD>ֵĿ<D6B5><C4BF><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
class dfPluginPline : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginPline(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
x=y=z=l=NULL;
|
|
|
|
|
|
num=0;
|
|
|
|
|
|
m_nColNum=2;
|
|
|
|
|
|
m_nPlineType=plineDefault;
|
|
|
|
|
|
m_dWidth=0;
|
|
|
|
|
|
};
|
|
|
|
|
|
~dfPluginPline(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
if(x!=NULL)
|
|
|
|
|
|
{
|
|
|
|
|
|
delete[] x;
|
|
|
|
|
|
x=y=z=l=NULL;
|
|
|
|
|
|
num=0;
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
int Create(int nPointNum)
|
|
|
|
|
|
{
|
|
|
|
|
|
if(nPointNum<=0) return 0;
|
|
|
|
|
|
num=nPointNum;
|
|
|
|
|
|
x=new double[num*4];
|
|
|
|
|
|
y=x+nPointNum;
|
|
|
|
|
|
z=y+nPointNum;
|
|
|
|
|
|
l=z+nPointNum;
|
|
|
|
|
|
return nPointNum;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
double *x, *y, *l, *z; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>꣨X,Y,Z,<><D7AE>)
|
|
|
|
|
|
int num; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
int m_nColNum; //<2F>а<EFBFBD><D0B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>СΪ2<CEAA><32>Ϊ3ʱ<33><CAB1><EFBFBD><EFBFBD>Zֵ<5A><D6B5>Ϊ4ʱ<34><CAB1><EFBFBD><EFBFBD>Lֵ
|
|
|
|
|
|
enumPlineType m_nPlineType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginPoint
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginPoint(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
x=y=z=l=0;
|
|
|
|
|
|
};
|
|
|
|
|
|
double x,y,z,l;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginRect
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginRect(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
left=right=top=bottom=0;
|
|
|
|
|
|
};
|
|
|
|
|
|
double left,right,top,bottom;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginPlineRect : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginPlineRect(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_nPlineType=plineDefault;
|
|
|
|
|
|
m_dWidth=0;
|
|
|
|
|
|
};
|
|
|
|
|
|
dfPluginRect m_rect;
|
|
|
|
|
|
enumPlineType m_nPlineType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginText : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginText(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_dWidth=m_dHeight=0;
|
|
|
|
|
|
m_nAlignH=2;
|
|
|
|
|
|
m_nAlignV=0;
|
|
|
|
|
|
angle = 0;
|
|
|
|
|
|
};
|
|
|
|
|
|
dfPluginPoint point; //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
double m_dHeight; //<2F><><EFBFBD>ָ߶<D6B8>
|
|
|
|
|
|
int m_nAlignH; //ˮƽ<CBAE><C6BD><EFBFBD><EFBFBD> <09><>0=<3D><><EFBFBD><EFBFBD><EFBFBD>룬1=<3D><><EFBFBD>ж<EFBFBD><D0B6>룬2=<3D>Ҷ<EFBFBD><D2B6>룩
|
|
|
|
|
|
int m_nAlignV; //<2F><>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD> <09><>0=<3D>϶<EFBFBD><CFB6>룬1=<3D><><EFBFBD>ж<EFBFBD><D0B6>룬2=<3D>¶<EFBFBD><C2B6>룩
|
|
|
|
|
|
double angle;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginEllipse : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginEllipse(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
};
|
|
|
|
|
|
dfPluginRect m_rect;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginArc : public dfPluginEllipse
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginArc(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_arcType=drawArc;
|
|
|
|
|
|
m_dArc1=0;
|
|
|
|
|
|
m_dArc2=2;
|
|
|
|
|
|
};
|
|
|
|
|
|
enum enumArcType
|
|
|
|
|
|
{
|
|
|
|
|
|
drawArc = 0, //<2F><>
|
|
|
|
|
|
drawChord = 1, //<2F><>
|
|
|
|
|
|
drawPie = 2 //<2F><>
|
|
|
|
|
|
};
|
|
|
|
|
|
enumArcType m_arcType;
|
|
|
|
|
|
double m_dArc1; //<2F><>ʼ<EFBFBD>Ƕ<EFBFBD>
|
|
|
|
|
|
double m_dArc2; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
class dfPluginImageBuffer : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginImageBuffer(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_nLength=0;
|
|
|
|
|
|
m_pBuffer=NULL;
|
|
|
|
|
|
memset(m_strImageType, 0, 4);
|
|
|
|
|
|
};
|
|
|
|
|
|
char m_strImageType[4]; //ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>Ϊ<EFBFBD><CEAA>BMP<4D><50>JPG<50><47>GIF<49><46>TIF<49><46>WMF<4D><46>EMF<4D><46>PNG<4E><47><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ļ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>а<EFBFBD><D0B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
dfPluginRect rect; //<2F><><EFBFBD>꼰<EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
BYTE* m_pBuffer; //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ĸ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
UINT m_nLength; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ȣ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>m_pBuffer<65>ij<EFBFBD><C4B3><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
class dfPluginImage : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginImage(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_nBPP=32;
|
|
|
|
|
|
m_nWidth=0;
|
|
|
|
|
|
m_nHeight=0;
|
|
|
|
|
|
m_pData=NULL;
|
|
|
|
|
|
};
|
|
|
|
|
|
dfPluginRect rect; //<2F><><EFBFBD>꼰<EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
int m_nBPP; //<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ8|16|32<33><32>1<EFBFBD>ֽڣ<D6BD>2<EFBFBD>ֽڣ<D6BD>4<EFBFBD>ֽڣ<D6BD>,һ<><D2BB><EFBFBD><EFBFBD>ɫֵ<C9AB><D6B5>ռ<EFBFBD>õ<EFBFBD><C3B5>ֽ<EFBFBD><D6BD><EFBFBD>
|
|
|
|
|
|
int m_nWidth;
|
|
|
|
|
|
int m_nHeight; //ͼ<><CDBC><EFBFBD>ĸ߿<C4B8>
|
|
|
|
|
|
BYTE* m_pData; //<2F><><EFBFBD><EFBFBD>m_nBPPָ<50><D6B8><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ɫֵռ<D6B5><D5BC><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>һ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
class dfPluginMark : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginMark(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_strMarkName[0]=0;
|
|
|
|
|
|
};
|
|
|
|
|
|
dfPluginRect rect; //<2F><><EFBFBD>꼰<EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
char m_strMarkName[256]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
class dfPluginFrame : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginFrame(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_dThickness=0;
|
|
|
|
|
|
m_bBlackFrame=TRUE;
|
|
|
|
|
|
m_strMarkName[0]=0;
|
|
|
|
|
|
m_color=0;
|
|
|
|
|
|
};
|
|
|
|
|
|
dfPluginRect rect; //<2F><><EFBFBD>꼰<EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
double m_dThickness; //<2F>߿<EFBFBD><DFBF><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
BOOL m_bBlackFrame; //<2F>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>߱߿<DFB1>
|
|
|
|
|
|
char m_strMarkName[256]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
long m_color; //<2F>߿<EFBFBD><DFBF><EFBFBD>ɫ
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>γ<EFBFBD><CEB3><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>
|
|
|
|
|
|
class dfPluginGriding : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginGriding(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_nGridingType=0; //ȱʡΪֱ<CEAA><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
m_dStepX=0;
|
|
|
|
|
|
m_dStepY=0;
|
|
|
|
|
|
m_dTextHeight=3;
|
|
|
|
|
|
m_nFlags=showLine|markAllSide|showFrame|showText|textMath;
|
|
|
|
|
|
};
|
|
|
|
|
|
int m_nGridingType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0:ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1=<3D><>γ<EFBFBD><CEB3>
|
|
|
|
|
|
|
|
|
|
|
|
dfPluginRect rect; //<2F><><EFBFBD>꼰<EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
double m_dStepX, m_dStepY; //<2F>ھ<EFBFBD><DABE>ȡ<EFBFBD>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>,<2C>Է<EFBFBD>Ϊ<EFBFBD><CEAA>λ
|
|
|
|
|
|
double m_dTextHeight; //<2F><><EFBFBD>ָ߶<D6B8>
|
|
|
|
|
|
DWORD m_nFlags; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
enum enumGridingStyle
|
|
|
|
|
|
{
|
|
|
|
|
|
markLeft = 0x00000001, //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
markTop = 0x00000002, //<2F>ϱ<EFBFBD>
|
|
|
|
|
|
markRight = 0x00000004, //<2F>ұ<EFBFBD>
|
|
|
|
|
|
markBottom = 0x00000008, //<2F>±<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
markAllSide = (markLeft | markTop | markRight | markBottom), //<2F><><EFBFBD>б<EFBFBD>
|
|
|
|
|
|
markLeftTop = (markLeft | markTop), //<2F><><EFBFBD><EFBFBD>+<2B>ϱ<EFBFBD>
|
|
|
|
|
|
markTopRight = (markTop | markRight), //<2F>ϱ<EFBFBD>+<2B>ұ<EFBFBD>
|
|
|
|
|
|
markRightBottom = (markRight| markBottom), //<2F>ұ<EFBFBD>+<2B>±<EFBFBD>
|
|
|
|
|
|
markBottomLeft = (markLeft | markBottom), //<2F>±<EFBFBD>+<2B><><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
showLine = 0x00000010, //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
|
|
|
|
|
showCrossPoint = 0x00000020, //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
|
|
|
|
|
showNull = 0x00000040, //<2F><>ʾΪ<CABE><CEAA>
|
|
|
|
|
|
|
|
|
|
|
|
textGeography = 0x00000100, //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
textMath = 0x00000200, //<2F><>ѧ
|
|
|
|
|
|
textGeography1 = 0x00000400, //<2F><><EFBFBD><EFBFBD>1
|
|
|
|
|
|
textGeography2 = 0x00000800, //<2F><><EFBFBD><EFBFBD>2(all)
|
|
|
|
|
|
textMathHor = 0x00020000, //<2F><>ѧˮƽ
|
|
|
|
|
|
|
|
|
|
|
|
showFrame = 0x00001000, //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ʶ<EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
showText = 0x00002000 //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class dfPluginSurface : public dfPluginElement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginSurface(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_dx=0;
|
|
|
|
|
|
m_dy=0;
|
|
|
|
|
|
numx=0;
|
|
|
|
|
|
numy=0;
|
|
|
|
|
|
m_pData=0;
|
|
|
|
|
|
zmin=0;
|
|
|
|
|
|
zmax=0;
|
|
|
|
|
|
};
|
|
|
|
|
|
dfPluginPoint point; //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
double m_dx;
|
|
|
|
|
|
double m_dy; //X<><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
int numx;
|
|
|
|
|
|
int numy; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
double* m_pData; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD>һ<EFBFBD>н<EFBFBD>һ<EFBFBD>еĸ<D0B5>ʽ<EFBFBD><CABD><EFBFBD>棬ÿ<E6A3AC>еĸ<D0B5><C4B8><EFBFBD>Ϊnumx<6D><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD>numy<6D><79>
|
|
|
|
|
|
double zmin;
|
|
|
|
|
|
double zmax; //Zֵ<5A><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сֵ<D0A1><D6B5><EFBFBD>÷<EFBFBD>Χ֮<CEA7><D6AE><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Ϊ<EFBFBD><CEAA>Чֵ
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
typedef bool( *DF_SET_CURRENT_LAYER )( const char* strLayer ); //<2F><><EFBFBD>õ<EFBFBD>ǰ<EFBFBD><C7B0>
|
|
|
|
|
|
typedef bool( *DF_SET_PROJECTION )( const char* strProjection ); //<2F><><EFBFBD><EFBFBD>ͶӰ<CDB6><D3B0><EFBFBD><EFBFBD>ʽΪ˫<CEAA><CBAB>DFD<46><44>ʽ
|
|
|
|
|
|
typedef bool( *DF_ELE_PLINE )( const dfPluginPline* ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_RECT )( const dfPluginPlineRect* ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_TEXT )( const dfPluginText* ); //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_POINT )( dfPluginPoint dp, const char* strName, double angle ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD><D6A3>羮λ<E7BEAE>ȣ<EFBFBD><C8A3><EFBFBD>˫<EFBFBD><CBAB><EFBFBD>п<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD><CEBF><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_ELLIPSE)( const dfPluginEllipse* ); //<2F><><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD>Բ
|
|
|
|
|
|
typedef bool( *DF_ELE_ARC )( const dfPluginArc* ); //<2F><><EFBFBD>뻡
|
|
|
|
|
|
typedef bool( *DF_ELE_IMAGE )( const dfPluginImage* ); //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
|
|
|
|
|
|
typedef bool( *DF_ELE_IMAGE_BUFFER)(const dfPluginImageBuffer* ); //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
|
|
|
|
|
|
typedef bool( *DF_ELE_IMAGE_FILE )( const char* strFileName, dfPluginRect rect); //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
|
|
|
|
|
|
typedef bool( *DF_ELE_SURFACE)( const dfPluginSurface* ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_XYZ)( double x, double y, double z ); //<2F><><EFBFBD><EFBFBD>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_MERGE_DF_FILE )(const char* strFileNameOrData, BOOL bMemeryData); //<2F>ϲ<EFBFBD>˫<EFBFBD><CBAB>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ſ<EFBFBD><C5BF>ȣ<EFBFBD><C8A3><EFBFBD>bMemeryDataΪTRUE<55><45>ʾstrFileNameOrData<74><61>ֱ<EFBFBD><D6B1>ΪDFD<46><44>ʽ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_GRIDING)( const dfPluginGriding* ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_FRAME)( const dfPluginFrame* ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_MARK)( const dfPluginMark* ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
typedef bool( *DF_ELE_BEGIN_CREATE_MARK)( const char* strMarkName ); //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
typedef bool( *DF_ELE_END_CREATE_MARK)( void ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
typedef bool( *DF_ELE_SAVE_FILE)( const char* strFileName, int nSaveType); //<2F><><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>Ϊָ<CEAA><D6B8><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>nSaveType:1=dfd<66><64>2=dfb<66><62>3=dml
|
|
|
|
|
|
typedef bool( *DF_ELE_CLEAR_ALL)( void ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>Ԫ<EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
using namespace NPluginFormatElements;
|
|
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6>ӿ<EFBFBD>
|
|
|
|
|
|
class dfPluginFormatReader
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginFormatReader(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_nVersion=1;
|
|
|
|
|
|
funSetCurrentLayer=NULL;
|
|
|
|
|
|
funSetProjection=NULL;
|
|
|
|
|
|
funElePline=NULL;
|
|
|
|
|
|
funEleRect=NULL;
|
|
|
|
|
|
funEleText=NULL;
|
|
|
|
|
|
funElePoint=NULL;
|
|
|
|
|
|
funEleEllipse=NULL;
|
|
|
|
|
|
funEleArc=NULL;
|
|
|
|
|
|
funEleImage=NULL;
|
|
|
|
|
|
funEleImageFile=NULL;
|
|
|
|
|
|
funEleSurface=NULL;
|
|
|
|
|
|
funEleXyz=NULL;
|
|
|
|
|
|
funEleMergeDFFile=NULL;
|
|
|
|
|
|
funEleGriding=NULL;
|
|
|
|
|
|
funEleFrame=NULL;
|
|
|
|
|
|
funEleImageBuffer=NULL;
|
|
|
|
|
|
funEleMark=NULL;
|
|
|
|
|
|
funEleBeginCreateMark=NULL;
|
|
|
|
|
|
funEleEndCreateMark=NULL;
|
|
|
|
|
|
funSaveFile=NULL;
|
|
|
|
|
|
funClearAll=NULL;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
int m_nVersion; //<2F>汾<EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>Щ<EFBFBD><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>չ<EFBFBD>ӿں<D3BF><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>ʹ<EFBFBD><CAB9>dfSetReader<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½ӿڣ<D3BF>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Щ<EFBFBD><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>ʵ<EFBFBD><CAB5>ʵʱ<CAB5><CAB1>ȡת<C8A1><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F>汾Ϊ1ʱ<31><CAB1>ʹ<EFBFBD>õĺ<C3B5><C4BA><EFBFBD><EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
|
DF_SET_CURRENT_LAYER funSetCurrentLayer;
|
|
|
|
|
|
DF_SET_PROJECTION funSetProjection;
|
|
|
|
|
|
DF_ELE_PLINE funElePline;
|
|
|
|
|
|
DF_ELE_RECT funEleRect;
|
|
|
|
|
|
DF_ELE_TEXT funEleText;
|
|
|
|
|
|
DF_ELE_POINT funElePoint;
|
|
|
|
|
|
DF_ELE_ELLIPSE funEleEllipse;
|
|
|
|
|
|
DF_ELE_ARC funEleArc;
|
|
|
|
|
|
DF_ELE_IMAGE funEleImage;
|
|
|
|
|
|
DF_ELE_IMAGE_FILE funEleImageFile;
|
|
|
|
|
|
DF_ELE_IMAGE_BUFFER funEleImageBuffer;
|
|
|
|
|
|
DF_ELE_SURFACE funEleSurface;
|
|
|
|
|
|
DF_ELE_XYZ funEleXyz;
|
|
|
|
|
|
DF_ELE_MERGE_DF_FILE funEleMergeDFFile;
|
|
|
|
|
|
DF_ELE_GRIDING funEleGriding;
|
|
|
|
|
|
DF_ELE_FRAME funEleFrame;
|
|
|
|
|
|
DF_ELE_MARK funEleMark;
|
|
|
|
|
|
|
|
|
|
|
|
DF_ELE_BEGIN_CREATE_MARK funEleBeginCreateMark;
|
|
|
|
|
|
DF_ELE_END_CREATE_MARK funEleEndCreateMark;
|
|
|
|
|
|
|
|
|
|
|
|
DF_ELE_SAVE_FILE funSaveFile;
|
|
|
|
|
|
DF_ELE_CLEAR_ALL funClearAll;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
|
class dfPluginFormatWriter
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
dfPluginFormatWriter(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_nVersion=1;
|
|
|
|
|
|
};
|
|
|
|
|
|
int m_nVersion; //<2F>汾<EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>Щ<EFBFBD><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>չ<EFBFBD>ӿں<D3BF><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>ʹ<EFBFBD><CAB9>dfGetWriter<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½ӿڣ<D3BF>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Щ<EFBFBD><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˫<EFBFBD><CBAB>Ԫ<EFBFBD><D4AA>ת<EFBFBD><D7AA>ת<EFBFBD><D7AA>Ϊָ<CEAA><D6B8><EFBFBD><EFBFBD>ʽ
|
|
|
|
|
|
//<2F>汾Ϊ1ʱ<31><CAB1>ʹ<EFBFBD>õĺ<C3B5><C4BA><EFBFBD><EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F>û<EFBFBD><C3BB><EFBFBD>Ҫ<EFBFBD>Ӹ<EFBFBD><D3B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>дReadFile<6C><65><EFBFBD><EFBFBD>
|
|
|
|
|
|
class CPluginFormatBase
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CPluginFormatBase(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset(&m_pluginFormat, 0, sizeof(m_pluginFormat));
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
//<2F>ڸò<DAB8><C3B2><EFBFBD><EFBFBD>н<EFBFBD><D0BD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>øú<C3B8><C3BA><EFBFBD><EFBFBD>Ϳɽ<CDBF><C9BD><EFBFBD>ת<EFBFBD><D7AA>Ϊ˫<CEAA><CBAB><EFBFBD><EFBFBD>ʽ
|
|
|
|
|
|
virtual int ReadFile(const char* strFilePathName, int nFormatType)=0;
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>˫<EFBFBD><CBAB><EFBFBD>е<EFBFBD><D0B5>øú<C3B8><C3BA><EFBFBD><EFBFBD>Ϳɽ<CDBF>˫<EFBFBD><CBAB><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ú<EFBFBD><C3BA><EFBFBD>
|
|
|
|
|
|
virtual dfPluginFormat* GetFormatInfo(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
return &m_pluginFormat;
|
|
|
|
|
|
};
|
|
|
|
|
|
//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>öԻ<C3B6><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
virtual int Initialize(const char* strFilePathName)
|
|
|
|
|
|
{
|
|
|
|
|
|
return 1;
|
|
|
|
|
|
};
|
|
|
|
|
|
virtual void Shutdown(void) //<2F><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><D0A9><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ͷ<EFBFBD><CDB7>ڴ<EFBFBD><DAB4><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
}
|
|
|
|
|
|
virtual void SetReaderFun(dfPluginFormatReader* pReader) //<2F>ڸò<DAB8><C3B2><EFBFBD><EFBFBD>н<EFBFBD><D0BD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>øú<C3B8><C3BA><EFBFBD><EFBFBD>Ϳɽ<CDBF><C9BD><EFBFBD>ת<EFBFBD><D7AA>Ϊ˫<CEAA><CBAB><EFBFBD><EFBFBD>ʽ
|
|
|
|
|
|
{
|
|
|
|
|
|
m_pFormatReader=pReader;
|
|
|
|
|
|
}
|
|
|
|
|
|
//virtual dfPluginFormatWriter* GetWriterFun(void)
|
|
|
|
|
|
//{
|
|
|
|
|
|
// return m_pFormatWrite;
|
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
void FillFormat(int nFormatNum, dfPluginFormatInfo* pInfo)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_pluginFormat.m_nFormatNum = nFormatNum;
|
|
|
|
|
|
m_pluginFormat.m_pFormatInfo = pInfo;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
dfPluginFormat m_pluginFormat;
|
|
|
|
|
|
dfPluginFormatReader* m_pFormatReader = nullptr;
|
|
|
|
|
|
//dfPluginFormatWriter* m_pFormatWrite; //д<><D0B4><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
////////////////////////////////////////////////////////////////
|
|
|
|
|
|
////<2F><>CPluginFormatBase<73><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>CPP<50>ļ<EFBFBD><C4BC>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD><C2B6><EFBFBD>
|
|
|
|
|
|
//
|
|
|
|
|
|
////<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
|
|
|
|
|
|
//#define PLUGIN_FORMAT_NUM 1
|
|
|
|
|
|
//dfPluginFormatInfo pluginFI[PLUGIN_FORMAT_NUM] = {
|
|
|
|
|
|
// {1, 1, TRUE, FALSE, "XYZ Files(*.csv; *.xyz)", "DoubleFox format plugin test", "*.xyz;*.csv"},
|
|
|
|
|
|
//};
|
|
|
|
|
|
//
|
|
|
|
|
|
////<2F><><EFBFBD><EFBFBD>ȫ<EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
|
|
|
|
|
|
//CPluginFormatEx m_pluginFormatEx;
|
|
|
|
|
|
//
|
|
|
|
|
|
//CPluginFormatEx::CPluginFormatEx(void)
|
|
|
|
|
|
//{
|
|
|
|
|
|
// m_pluginFormat.m_nFormatNum=PLUGIN_FORMAT_NUM;
|
|
|
|
|
|
// m_pluginFormat.m_pFormatInfo=pluginFI;
|
|
|
|
|
|
// m_pPluginFormatBase=&m_pluginFormatXyz;
|
|
|
|
|
|
//}
|
|
|
|
|
|
//
|
|
|
|
|
|
////<2F><><EFBFBD>崿<EFBFBD><E5B4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//int CPluginFormatEx::ReadFile(const char* strFilePathName, int nFormatType)
|
|
|
|
|
|
//{
|
|
|
|
|
|
// CXyz xyz;
|
|
|
|
|
|
// return xyz.Read(strFilePathName);
|
|
|
|
|
|
//}
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//˫<><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľӿں<D3BF><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6>壬<EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD>б<EFBFBD><D0B1>붨<EFBFBD><EBB6A8><EFBFBD><EFBFBD>ЩCODE<44><45><EFBFBD><EFBFBD>
|
|
|
|
|
|
#define DF_GET_PLUGIN_FORMAT_NAME "dfGetPluginFormat" //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ú<EFBFBD><C3BA><EFBFBD>
|
|
|
|
|
|
#define DF_GET_PLUGIN_FORMAT_CODE dfGetPluginFormat
|
|
|
|
|
|
|
|
|
|
|
|
typedef CPluginFormatBase* ( *DF_GET_PLUGIN_FORMAT )( void ); //<2F><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD>ָ<EFBFBD><D6B8>
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
using namespace NPluginFormat;
|
|
|
|
|
|
|
|
|
|
|
|
#endif //__DF_PLUGIN_FORMAT_BASE_H__
|
|
|
|
|
|
|