OSDN Git Service

rebuid v2.2.20p0136
authorTakuo Yasunaga <yasunaga@bio.kyutech.ac.jp>
Wed, 1 Apr 2015 20:37:54 +0000 (05:37 +0900)
committerTakuo Yasunaga <yasunaga@bio.kyutech.ac.jp>
Wed, 1 Apr 2015 20:37:54 +0000 (05:37 +0900)
bin/wish/Display2/tclIndex
include/dmFile.h
src/Objects/DataManip/dmFile/doc/dmFile.html
src/Tools/Integration/Visualmake/src/wish/a.hoge [deleted file]
src/Tools/Integration/Visualmake/src/wish/a.hogehoge [deleted file]
src/Tools/filter/dmInfo/src/dmInfo.html
src/Tools/mrcImage/mrcImageDensityInfo/src/mrcImageDensityInfo.html

index a68164c..75a715a 100644 (file)
@@ -6,38 +6,41 @@
 # element name is the name of a command and the value is
 # a script that loads the command.
 
-set auto_index(roiAreaRotateStart) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(roiAreaRotateMotion) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(roiAreaRotateEnd) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(rectangleRotate) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(rectangleRotateCalc) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(lineRotate) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(lineRotateCalc) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(splineRotate) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(splineRotateCalc) [list source [file join $dir RoiAreaRotate.wish]]
-set auto_index(roiAreaSelectStart) [list source [file join $dir RoiAreaSelect.wish]]
-set auto_index(roiAreaSelectMotion) [list source [file join $dir RoiAreaSelect.wish]]
-set auto_index(roiAreaSelectEnd) [list source [file join $dir RoiAreaSelect.wish]]
-set auto_index(roiAreaSelectOK) [list source [file join $dir RoiAreaSelect.wish]]
+set auto_index(display2BindingSet) [list source [file join $dir Display2Binding.wish]]
 set auto_index(colormapChange) [list source [file join $dir Display2Colormap.wish]]
+set auto_index(display2DesktopSet) [list source [file join $dir Display2Desktop.wish]]
+set auto_index(display2ETCSet) [list source [file join $dir Display2ETCSet.wish]]
+set auto_index(fileOpenWinCreate) [list source [file join $dir Display2File.wish]]
+set auto_index(fileNewWinCreate) [list source [file join $dir Display2File.wish]]
+set auto_index(seqFileOpenWinCreate) [list source [file join $dir Display2File.wish]]
+set auto_index(seqFileNewWinCreate) [list source [file join $dir Display2File.wish]]
+set auto_index(fileOpen) [list source [file join $dir Display2Image.wish]]
+set auto_index(mainImagePut) [list source [file join $dir Display2Image.wish]]
+set auto_index(overviewImagePut) [list source [file join $dir Display2Image.wish]]
+set auto_index(histgramGraphCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(display2InformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(fileReopen) [list source [file join $dir Display2Info.wish]]
+set auto_index(mrcImageInformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(imageInformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(layerLineInformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(projectionInformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(sectionInformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(ctfInformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(unitCellInformationWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(scaleInfoWinCreate) [list source [file join $dir Display2Info.wish]]
+set auto_index(roiInformationWinCreate) [list source [file join $dir Display2InfoROI.wish]]
+set auto_index(roiLineInfoFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
+set auto_index(roiSplineInfoFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
+set auto_index(roiRectangleInfoFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
+set auto_index(roiAnalysisFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
+set auto_index(display2Init) [list source [file join $dir Display2Init.wish]]
+set auto_index(display2MenuSet) [list source [file join $dir Display2Menu.wish]]
+set auto_index(menuFileCreate) [list source [file join $dir Display2Menu.wish]]
+set auto_index(menuSeqFileCreate) [list source [file join $dir Display2Menu.wish]]
+set auto_index(menuWindowCreate) [list source [file join $dir Display2Menu.wish]]
+set auto_index(menuInfoCreate) [list source [file join $dir Display2Menu.wish]]
+set auto_index(menuHelpCreate) [list source [file join $dir Display2Menu.wish]]
 set auto_index(display2MenuSet2) [list source [file join $dir Display2Menu2.wish]]
-set auto_index(fft2dCmd) [list source [file join $dir fft2dCmd.wish]]
-set auto_index(display2BindingSet) [list source [file join $dir Display2Binding.wish]]
-set auto_index(roiMultiAreaInfoSave) [list source [file join $dir RoiAreaFile.wish]]
-set auto_index(roiMultiAreaInfoLoad) [list source [file join $dir RoiAreaFile.wish]]
-set auto_index(roiAreaFileSave) [list source [file join $dir RoiAreaFile.wish]]
-set auto_index(roiAreaFFT) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(splineNearPoint) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(rectangleNearPoint) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(lineNearPoint) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(pointDistance) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(pointDistance2) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(vectorAngle) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(coordGetInMainImageToReal) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(coordGetInMainImageToCanvas) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(dataGetInMainImageToReal) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(dataGetInMainImageToCanvas) [list source [file join $dir RoiAreaUtil.wish]]
-set auto_index(pointSet) [list source [file join $dir RoiAreaUtil.wish]]
 set auto_index(roiRelatedObjectRecreate) [list source [file join $dir Display2MenuROI.wish]]
 set auto_index(menuRoiCreate) [list source [file join $dir Display2MenuROI.wish]]
 set auto_index(menuRoiCancelCommand) [list source [file join $dir Display2MenuROI.wish]]
@@ -46,42 +49,14 @@ set auto_index(menuMultiRoiOKCommand) [list source [file join $dir Display2MenuR
 set auto_index(menuMultiRoiAllDeleteCommand) [list source [file join $dir Display2MenuROI.wish]]
 set auto_index(menuMultiRoiDeleteCommand) [list source [file join $dir Display2MenuROI.wish]]
 set auto_index(menuEditCreate) [list source [file join $dir Display2MenuROI.wish]]
-<<<<<<< HEAD
-set auto_index(display2Init) [list source [file join $dir Display2Init.wish]]
-set auto_index(display2MenuSet) [list source [file join $dir Display2Menu.wish]]
-set auto_index(menuFileCreate) [list source [file join $dir Display2Menu.wish]]
-set auto_index(menuSeqFileCreate) [list source [file join $dir Display2Menu.wish]]
-set auto_index(menuWindowCreate) [list source [file join $dir Display2Menu.wish]]
-set auto_index(menuInfoCreate) [list source [file join $dir Display2Menu.wish]]
-set auto_index(menuHelpCreate) [list source [file join $dir Display2Menu.wish]]
-set auto_index(roiAreaResizeStart) [list source [file join $dir RoiAreaResize.wish]]
-set auto_index(roiAreaResizeMotion) [list source [file join $dir RoiAreaResize.wish]]
-set auto_index(roiAreaResizeEnd) [list source [file join $dir RoiAreaResize.wish]]
-set auto_index(rectangleResize) [list source [file join $dir RoiAreaResize.wish]]
-set auto_index(rectangleResizeCalc) [list source [file join $dir RoiAreaResize.wish]]
-set auto_index(lineResize) [list source [file join $dir RoiAreaResize.wish]]
-set auto_index(splineResize) [list source [file join $dir RoiAreaResize.wish]]
-=======
-set auto_index(fft2dCmd) [list source [file join $dir fft2dCmd.wish]]
->>>>>>> FETCH_HEAD
 set auto_index(layerLineRecreate) [list source [file join $dir LayerLineUtil.wish]]
 set auto_index(layerLineCreate) [list source [file join $dir LayerLineUtil.wish]]
 set auto_index(layerLineClear) [list source [file join $dir LayerLineUtil.wish]]
 set auto_index(layerLineChange) [list source [file join $dir LayerLineUtil.wish]]
-set auto_index(histgramGraphCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(display2InformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(fileReopen) [list source [file join $dir Display2Info.wish]]
-set auto_index(mrcImageInformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(imageInformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(layerLineInformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(projectionInformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(sectionInformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(ctfInformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(unitCellInformationWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(scaleInfoWinCreate) [list source [file join $dir Display2Info.wish]]
-set auto_index(roiAreaZoomIn) [list source [file join $dir RoiAreaZoom.wish]]
-set auto_index(roiAreaZoomOut) [list source [file join $dir RoiAreaZoom.wish]]
-set auto_index(roiAreaZoom) [list source [file join $dir RoiAreaZoom.wish]]
+set auto_index(projectionRecreate) [list source [file join $dir ProjectionUtil.wish]]
+set auto_index(projectionCreate) [list source [file join $dir ProjectionUtil.wish]]
+set auto_index(projectionClear) [list source [file join $dir ProjectionUtil.wish]]
+set auto_index(projectionChange) [list source [file join $dir ProjectionUtil.wish]]
 set auto_index(roiAreaCreateStart) [list source [file join $dir RoiAreaCreate.wish]]
 set auto_index(roiAreaCreateMotion) [list source [file join $dir RoiAreaCreate.wish]]
 set auto_index(roiAreaCreateEnd) [list source [file join $dir RoiAreaCreate.wish]]
@@ -99,29 +74,54 @@ set auto_index(roiSplineEnd) [list source [file join $dir RoiAreaCreate.wish]]
 set auto_index(splineCreate) [list source [file join $dir RoiAreaCreate.wish]]
 set auto_index(knobShow) [list source [file join $dir RoiAreaCreate.wish]]
 set auto_index(knobHide) [list source [file join $dir RoiAreaCreate.wish]]
-set auto_index(fileOpenWinCreate) [list source [file join $dir Display2File.wish]]
-set auto_index(fileNewWinCreate) [list source [file join $dir Display2File.wish]]
-set auto_index(seqFileOpenWinCreate) [list source [file join $dir Display2File.wish]]
-set auto_index(seqFileNewWinCreate) [list source [file join $dir Display2File.wish]]
-set auto_index(ScaleRecreate) [list source [file join $dir ScaleUtil.wish]]
-set auto_index(ScaleCreate) [list source [file join $dir ScaleUtil.wish]]
-set auto_index(ScaleClear) [list source [file join $dir ScaleUtil.wish]]
-set auto_index(ScaleChange) [list source [file join $dir ScaleUtil.wish]]
-set auto_index(unitCellRecreate) [list source [file join $dir UnitCell.wish]]
-set auto_index(fileOpen) [list source [file join $dir Display2Image.wish]]
-set auto_index(mainImagePut) [list source [file join $dir Display2Image.wish]]
-set auto_index(overviewImagePut) [list source [file join $dir Display2Image.wish]]
+set auto_index(roiMultiAreaInfoSave) [list source [file join $dir RoiAreaFile.wish]]
+set auto_index(roiMultiAreaInfoLoad) [list source [file join $dir RoiAreaFile.wish]]
+set auto_index(roiAreaFileSave) [list source [file join $dir RoiAreaFile.wish]]
 set auto_index(roiAreaMoveStart) [list source [file join $dir RoiAreaMove.wish]]
 set auto_index(roiAreaMoveMotion) [list source [file join $dir RoiAreaMove.wish]]
 set auto_index(roiAreaMoveEnd) [list source [file join $dir RoiAreaMove.wish]]
 set auto_index(rectangleMove) [list source [file join $dir RoiAreaMove.wish]]
 set auto_index(lineMove) [list source [file join $dir RoiAreaMove.wish]]
 set auto_index(splineMove) [list source [file join $dir RoiAreaMove.wish]]
-set auto_index(roiInformationWinCreate) [list source [file join $dir Display2InfoROI.wish]]
-set auto_index(roiLineInfoFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
-set auto_index(roiSplineInfoFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
-set auto_index(roiRectangleInfoFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
-set auto_index(roiAnalysisFrameCreate) [list source [file join $dir Display2InfoROI.wish]]
+set auto_index(roiAreaResizeStart) [list source [file join $dir RoiAreaResize.wish]]
+set auto_index(roiAreaResizeMotion) [list source [file join $dir RoiAreaResize.wish]]
+set auto_index(roiAreaResizeEnd) [list source [file join $dir RoiAreaResize.wish]]
+set auto_index(rectangleResize) [list source [file join $dir RoiAreaResize.wish]]
+set auto_index(rectangleResizeCalc) [list source [file join $dir RoiAreaResize.wish]]
+set auto_index(lineResize) [list source [file join $dir RoiAreaResize.wish]]
+set auto_index(splineResize) [list source [file join $dir RoiAreaResize.wish]]
+set auto_index(roiAreaRotateStart) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(roiAreaRotateMotion) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(roiAreaRotateEnd) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(rectangleRotate) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(rectangleRotateCalc) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(lineRotate) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(lineRotateCalc) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(splineRotate) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(splineRotateCalc) [list source [file join $dir RoiAreaRotate.wish]]
+set auto_index(roiAreaSelectStart) [list source [file join $dir RoiAreaSelect.wish]]
+set auto_index(roiAreaSelectMotion) [list source [file join $dir RoiAreaSelect.wish]]
+set auto_index(roiAreaSelectEnd) [list source [file join $dir RoiAreaSelect.wish]]
+set auto_index(roiAreaSelectOK) [list source [file join $dir RoiAreaSelect.wish]]
+set auto_index(roiAreaFFT) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(splineNearPoint) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(rectangleNearPoint) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(lineNearPoint) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(pointDistance) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(pointDistance2) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(vectorAngle) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(coordGetInMainImageToReal) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(coordGetInMainImageToCanvas) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(dataGetInMainImageToReal) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(dataGetInMainImageToCanvas) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(pointSet) [list source [file join $dir RoiAreaUtil.wish]]
+set auto_index(roiAreaZoomIn) [list source [file join $dir RoiAreaZoom.wish]]
+set auto_index(roiAreaZoomOut) [list source [file join $dir RoiAreaZoom.wish]]
+set auto_index(roiAreaZoom) [list source [file join $dir RoiAreaZoom.wish]]
+set auto_index(ScaleRecreate) [list source [file join $dir ScaleUtil.wish]]
+set auto_index(ScaleCreate) [list source [file join $dir ScaleUtil.wish]]
+set auto_index(ScaleClear) [list source [file join $dir ScaleUtil.wish]]
+set auto_index(ScaleChange) [list source [file join $dir ScaleUtil.wish]]
 set auto_index(sectionInit) [list source [file join $dir SectionUtil.wish]]
 set auto_index(sectionRecreateAll) [list source [file join $dir SectionUtil.wish]]
 set auto_index(sectionRecreate) [list source [file join $dir SectionUtil.wish]]
@@ -130,10 +130,5 @@ set auto_index(sectionCreate) [list source [file join $dir SectionUtil.wish]]
 set auto_index(sectionClearAll) [list source [file join $dir SectionUtil.wish]]
 set auto_index(sectionClear) [list source [file join $dir SectionUtil.wish]]
 set auto_index(sectionChange) [list source [file join $dir SectionUtil.wish]]
-set auto_index(display2DesktopSet) [list source [file join $dir Display2Desktop.wish]]
-set auto_index(display2ETCSet) [list source [file join $dir Display2ETCSet.wish]]
-set auto_index(projectionRecreate) [list source [file join $dir ProjectionUtil.wish]]
-set auto_index(projectionCreate) [list source [file join $dir ProjectionUtil.wish]]
-set auto_index(projectionClear) [list source [file join $dir ProjectionUtil.wish]]
-set auto_index(projectionChange) [list source [file join $dir ProjectionUtil.wish]]
 set auto_index(unitCellRecreate) [list source [file join $dir UnitCell.wish]]
+set auto_index(fft2dCmd) [list source [file join $dir fft2dCmd.wish]]
index 216445c..b1408b5 100644 (file)
@@ -27,62 +27,98 @@ typedef __int16_t dmFileInteger2;
 typedef __int8_t  dmFileInteger1; 
 
 typedef enum dmFileTagDataType {
-       dmFileTagDataTypeShort=2,
-       dmFileTagDataTypeLong =3,
-       dmFileTagDataTypeUShort =4,
+       dmFileTagDataTypeInt2   =2,
+       dmFileTagDataTypeInt4   =3,
+       dmFileTagDataTypeUInt2  =4,
+       dmFileTagDataTypeUInt4  =5,
+       dmFileTagDataTypeReal4  =6,
+       dmFileTagDataTypeReal8  =7,
+       dmFileTagDataTypeBool1  =8,
+       dmFileTagDataTypeChar1  =9,
+       dmFileTagDataTypeInt1   =0xa,
+       dmFileTagDataTypeInt8   =0xb,
+       dmFileTagDataTypeStruct =0xf,
+       dmFileTagDataTypeString =0x12,
+       dmFileTagDataTypeArray  =0x14,
 } dmFileTagDataType;
 
+static size_t __dmFileTagDataTypeSize[24] = {
+ 0, 0, 2, 4, 2, 4, 4, 8, 1, 1,
+ 1, 8, 0, 0, 0,        0, 0, 0, 0, 0,
+ 0, 0, 0, 0
+}; 
+
+static char* __dmFileTagDataTypeFormat[24] = {
+ 0, 0, "%d", "%d", "%u", "%u", "%f", "%f", "%d", "%c",
+ "%d", "%d", 0, 0, 0,  0, 0, 0, 0, 0,
+ 0, 0, 0, 0
+}; 
+
 // Header
-typedef struct dm3FileHeader {
+typedef struct dmFile3Header {
        dmFileInteger4 version;
        dmFileInteger4 rootLength;
        dmFileInteger4 byteOrder;
-} dm3FileHeader;
+} dmFile3Header;
 
-typedef struct dm4FileHeader {
+typedef struct dmFile4Header {
        dmFileInteger4 version;
        dmFileInteger8 rootLength;
        dmFileInteger4 byteOrder;
-} dm4FileHeader;
-
-// Root Tag Directory
-typedef struct dm3FileRootTagDirectory {
-       dmFileInteger1 sortf;
-       dmFileInteger1 closef;
-       dmFileInteger4 numberOfTags;
-} dm3FileRootTagDirectory;
+} dmFile4Header;
 
-typedef struct dm4FileRootTagDirectory {
-       dmFileInteger1 sortf;
-       dmFileInteger1 closef;
-       dmFileInteger8 numberOfTags;
-} dm4FileRootTagDirectory;
+typedef struct dmFile3TagDirectory dmFile3TagDirectory;
+typedef struct dmFile4TagDirectory dmFile4TagDirectory; 
 
-// Tag Directory
-typedef struct dm3FileTagDirectrory {
+// Tag 
+typedef struct dmFile3Tag {
        dmFileInteger1 tagID;
        dmFileInteger2 tagNameLength; // Bytes
        char*          tagName;
+       // Tag
        dmFileInteger1 seperator[4];
-       dmFileInteger4 sizeDim; 
-       dmFileInteger4* dim; 
-} dm3FileTagDirectrory;
-
-typedef struct dm4FileTagDirectrory {
+       dmFileInteger4 ninfo; 
+       dmFileInteger4* info; 
+       void*           value;
+       void**          value2;
+       // TagDirectory 
+       dmFile3TagDirectory* tagDir;
+} dmFile3Tag;
+
+typedef struct dmFile4Tag {
        dmFileInteger1 tagID;
        dmFileInteger2 tagNameLength; // Bytes
        char*          tagName;
-} dm4FileTagDirectrory;
+       // Tag
+       dmFileInteger1 seperator[4];
+       // TagDirectory
+       dmFile4TagDirectory* tagDir;
+} dmFile4Tag;
+
+// Root Tag Directory
+struct dmFile3TagDirectory {
+       dmFileInteger1 sortf;
+       dmFileInteger1 closef;
+       dmFileInteger4 numberOfTags;
+       dmFile3Tag* Tags;
+} ;  
+
+struct dmFile4TagDirectory {
+       dmFileInteger1 sortf;
+       dmFileInteger1 closef;
+       dmFileInteger8 numberOfTags;
+       dmFile4Tag* Tags;
+} ; 
 
 typedef struct dmFile {
        // Header
        dmFileInteger4 version;
-       dm3FileHeader Header3;
-       dm4FileHeader Header4;
+       dmFile3Header Header3;
+       dmFile4Header Header4;
        // Root Tag
-       dm3FileRootTagDirectory RootTag3;
-       dm4FileRootTagDirectory RootTag4;
-
+       dmFile3TagDirectory RootTag3;
+       dmFile4TagDirectory RootTag4;
+       // Tail
        dmFileInteger8 Tail;
 } dmFile;
 
@@ -99,7 +135,26 @@ extern void dmFileInfo(FILE* fpt, dmFile dm, int mode);
 
 // in dmFileRead.c
 extern void dmFileRead(FILE* fpt, dmFile* dm, char* message, int mode);
-
+// DM Header and End Read: check file format
+extern void dmFileHeaderTailRead(FILE* fpt, dmFile* dm, char* message, int mode);
+// DM3
+// Header 
+extern void dmFile3HeaderRead(FILE* fpt, dmFile* dm, char* message, int mode);
+//
+extern void dmFile3TagDirectoryHeaderRead(FILE* fpt, dmFile3TagDirectory* dmRoot, char* message, int mode);
+extern void dmFile3TagHeaderRead(FILE* fpt, dmFile3Tag* dmTag, char* message, int mode);
+extern void dmFile3TagRead(FILE* fpt, dmFile3Tag* dmTag, char* message, int mode);
+
+// DM4
+// Header
+extern void dmFile4HeaderRead(FILE* fpt, dmFile* dm, char* message, int mode);
+//  
+extern void dmFile4TagDirectoryHeaderRead(FILE* fpt, dmFile4TagDirectory* dmRoot, char* message, int mode);
+extern void dmFile4TagHeaderRead(FILE* fpt, dmFile4Tag* dmTag, char* message, int mode);
+extern void dmFile4TagRead(FILE* fpt, dmFile4Tag* dmTag, char* message, int mode);
+
+// in dmFileUtil.c
+extern void dmFileValuePrint(FILE* fpt, void* value, dmFileTagDataType valueType, int n); 
 
 /* prototype end */
 
index 7681913..d1eaa72 100644 (file)
@@ -6,6 +6,8 @@
 ../src/dmFileInfo.c:
 
 ../src/dmFileRead.c:
+
+../src/dmFileUtil.c:
 </PRE>
 <HR>
 <A NAME="include">
@@ -41,62 +43,98 @@ typedef __int16_t dmFileInteger2;
 typedef __int8_t  dmFileInteger1; 
 
 typedef enum dmFileTagDataType {
-       dmFileTagDataTypeShort=2,
-       dmFileTagDataTypeLong =3,
-       dmFileTagDataTypeUShort =4,
+       dmFileTagDataTypeInt2   =2,
+       dmFileTagDataTypeInt4   =3,
+       dmFileTagDataTypeUInt2  =4,
+       dmFileTagDataTypeUInt4  =5,
+       dmFileTagDataTypeReal4  =6,
+       dmFileTagDataTypeReal8  =7,
+       dmFileTagDataTypeBool1  =8,
+       dmFileTagDataTypeChar1  =9,
+       dmFileTagDataTypeInt1   =0xa,
+       dmFileTagDataTypeInt8   =0xb,
+       dmFileTagDataTypeStruct =0xf,
+       dmFileTagDataTypeString =0x12,
+       dmFileTagDataTypeArray  =0x14,
 } dmFileTagDataType;
 
+static size_t __dmFileTagDataTypeSize[24] = {
+ 0, 0, 2, 4, 2, 4, 4, 8, 1, 1,
+ 1, 8, 0, 0, 0,        0, 0, 0, 0, 0,
+ 0, 0, 0, 0
+}; 
+
+static char* __dmFileTagDataTypeFormat[24] = {
+ 0, 0, "%d", "%d", "%u", "%u", "%f", "%f", "%d", "%c",
+ "%d", "%d", 0, 0, 0,  0, 0, 0, 0, 0,
+ 0, 0, 0, 0
+}; 
+
 // Header
-typedef struct dm3FileHeader {
+typedef struct dmFile3Header {
        dmFileInteger4 version;
        dmFileInteger4 rootLength;
        dmFileInteger4 byteOrder;
-} dm3FileHeader;
+} dmFile3Header;
 
-typedef struct dm4FileHeader {
+typedef struct dmFile4Header {
        dmFileInteger4 version;
        dmFileInteger8 rootLength;
        dmFileInteger4 byteOrder;
-} dm4FileHeader;
+} dmFile4Header;
 
-// Root Tag Directory
-typedef struct dm3FileRootTagDirectory {
-       dmFileInteger1 sortf;
-       dmFileInteger1 closef;
-       dmFileInteger4 numberOfTags;
-} dm3FileRootTagDirectory;
+typedef struct dmFile3TagDirectory dmFile3TagDirectory;
+typedef struct dmFile4TagDirectory dmFile4TagDirectory; 
 
-typedef struct dm4FileRootTagDirectory {
-       dmFileInteger1 sortf;
-       dmFileInteger1 closef;
-       dmFileInteger8 numberOfTags;
-} dm4FileRootTagDirectory;
-
-// Tag Directory
-typedef struct dm3FileTagDirectrory {
+// Tag 
+typedef struct dmFile3Tag {
        dmFileInteger1 tagID;
        dmFileInteger2 tagNameLength; // Bytes
        char*          tagName;
+       // Tag
        dmFileInteger1 seperator[4];
-       dmFileInteger4 sizeDim; 
-       dmFileInteger4* dim; 
-} dm3FileTagDirectrory;
-
-typedef struct dm4FileTagDirectrory {
+       dmFileInteger4 ninfo; 
+       dmFileInteger4* info; 
+       void*           value;
+       void**          value2;
+       // TagDirectory 
+       dmFile3TagDirectory* tagDir;
+} dmFile3Tag;
+
+typedef struct dmFile4Tag {
        dmFileInteger1 tagID;
        dmFileInteger2 tagNameLength; // Bytes
        char*          tagName;
-} dm4FileTagDirectrory;
+       // Tag
+       dmFileInteger1 seperator[4];
+       // TagDirectory
+       dmFile4TagDirectory* tagDir;
+} dmFile4Tag;
+
+// Root Tag Directory
+struct dmFile3TagDirectory {
+       dmFileInteger1 sortf;
+       dmFileInteger1 closef;
+       dmFileInteger4 numberOfTags;
+       dmFile3Tag* Tags;
+} ;  
+
+struct dmFile4TagDirectory {
+       dmFileInteger1 sortf;
+       dmFileInteger1 closef;
+       dmFileInteger8 numberOfTags;
+       dmFile4Tag* Tags;
+} ; 
 
 typedef struct dmFile {
        // Header
        dmFileInteger4 version;
-       dm3FileHeader Header3;
-       dm4FileHeader Header4;
+       dmFile3Header Header3;
+       dmFile4Header Header4;
        // Root Tag
-       dm3FileRootTagDirectory RootTag3;
-       dm4FileRootTagDirectory RootTag4;
-
+       dmFile3TagDirectory RootTag3;
+       dmFile4TagDirectory RootTag4;
+       // Tail
        dmFileInteger8 Tail;
 } dmFile;
 
@@ -113,7 +151,26 @@ extern void dmFileInfo(FILE* fpt, dmFile dm, int mode);
 
 // in dmFileRead.c
 extern void dmFileRead(FILE* fpt, dmFile* dm, char* message, int mode);
-
+// DM Header and End Read: check file format
+extern void dmFileHeaderTailRead(FILE* fpt, dmFile* dm, char* message, int mode);
+// DM3
+// Header 
+extern void dmFile3HeaderRead(FILE* fpt, dmFile* dm, char* message, int mode);
+//
+extern void dmFile3TagDirectoryHeaderRead(FILE* fpt, dmFile3TagDirectory* dmRoot, char* message, int mode);
+extern void dmFile3TagHeaderRead(FILE* fpt, dmFile3Tag* dmTag, char* message, int mode);
+extern void dmFile3TagRead(FILE* fpt, dmFile3Tag* dmTag, char* message, int mode);
+
+// DM4
+// Header
+extern void dmFile4HeaderRead(FILE* fpt, dmFile* dm, char* message, int mode);
+//  
+extern void dmFile4TagDirectoryHeaderRead(FILE* fpt, dmFile4TagDirectory* dmRoot, char* message, int mode);
+extern void dmFile4TagHeaderRead(FILE* fpt, dmFile4Tag* dmTag, char* message, int mode);
+extern void dmFile4TagRead(FILE* fpt, dmFile4Tag* dmTag, char* message, int mode);
+
+// in dmFileUtil.c
+extern void dmFileValuePrint(FILE* fpt, void* value, dmFileTagDataType valueType, int n); 
 
 /* prototype end */
 
diff --git a/src/Tools/Integration/Visualmake/src/wish/a.hoge b/src/Tools/Integration/Visualmake/src/wish/a.hoge
deleted file mode 100755 (executable)
index 9daeafb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/src/Tools/Integration/Visualmake/src/wish/a.hogehoge b/src/Tools/Integration/Visualmake/src/wish/a.hogehoge
deleted file mode 100755 (executable)
index 9daeafb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-test
index f437e9a..ed66fa5 100755 (executable)
@@ -1 +1 @@
-/bin/bash: dmInfo: No such file or directory
+/bin/bash: dmInfo: そのようなファイルやディレクトリはありません
index d80445b..e6c803e 100755 (executable)
@@ -10,7 +10,7 @@ Usage: mrcImageDensityInfo
 Options:
     [-i[nput]            In                  (NULL      ).as(inFile              ) ] :Essential :InputDataFile
     [-o[utput]           Out                 (stdout    ).as(outFile             ) ] :Optional  :OutputDataFile
-    [-C[ontour]          Contour             (10        ).as(Real                ) ] :Optional  :ContourLevel: 10 6.920998e-310ach
+    [-C[ontour]          Contour             (10        ).as(Real                ) ] :Optional  :ContourLevel: 10 6.950489e-310ach
     [-log                Log                 (NULL      ).as(appendFile          ) ] :Optional  :OutputDataFile
     [-c[onfig]           configFile          (NULL      ).as(inFile              ) ] :Optional  :ConfigurationFile
     [-m[ode]             mode                (0         ).as(Integer             ) ] :Optional  :Mode