Bsoft 2.1.4
Bernard's software package
tcltk_bmg.cpp File Reference

A shared object to manage micrograph parameter files in TCL/Tk. More...

#include <tk.h>
#include "tcltk_bbox.h"
#include "tcltk_bfil.h"
#include "tcltk_bhelix.h"
#include "tcltk_bxtal.h"
#include "tcltk_bmarker.h"
#include "mg_processing.h"
#include "mg_multiple.h"
#include "mg_img_proc.h"
#include "mg_select.h"
#include "mg_ctf.h"
#include "mg_ctf_fit.h"
#include "mg_tomography.h"
#include "mg_tags.h"
#include "rwmg.h"
#include "rwimg.h"
#include "rwmodel_param.h"
#include "scatter.h"
#include "linked_list.h"
#include "timer.h"
#include "utilities.h"
#include <sys/stat.h>

Functions

Tcl_Obj * do_get (Bproject *project, int objc, Tcl_Obj *CONST objv[])
 
int do_set (Bproject *project, int objc, Tcl_Obj *CONST objv[])
 
Tcl_Obj * do_rps (Bproject *project, int objc, Tcl_Obj *CONST objv[])
 
Tcl_Obj * do_emfp (int objc, Tcl_Obj *CONST objv[])
 
Tcl_Obj * do_material_list ()
 
Tcl_Obj * do_ctf_fit (Bproject *project, int objc, Tcl_Obj *CONST objv[])
 
Tcl_Obj * do_mg_sort (Bproject *project, int objc, Tcl_Obj *CONST objv[])
 
int project_processing (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
 Implements the "Bmg" command in Tcl/Tk to access micrograph parameter files through Bsoft. More...
 
Bstring get_all_file_names (Bproject *project)
 
Bstring get_all_file_names (Bproject *project, Bstring imgtype)
 
Tcl_Obj * part_select (Bparticle *part, int objc, Tcl_Obj *CONST objv[])
 
Tcl_Obj * part_fom (Bparticle *part, int objc, Tcl_Obj *CONST objv[])
 

Variables

int verbose
 
Bprojectproject
 
Bimageimglist
 

Detailed Description

A shared object to manage micrograph parameter files in TCL/Tk.

Author
Bernard Heymann
Date
Created: 20030813
Modified: 20210311

Function Documentation

◆ do_ctf_fit()

Tcl_Obj * do_ctf_fit ( Bproject project,
int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ do_emfp()

Tcl_Obj * do_emfp ( int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ do_get()

Tcl_Obj * do_get ( Bproject project,
int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ do_material_list()

Tcl_Obj * do_material_list ( )

◆ do_mg_sort()

Tcl_Obj * do_mg_sort ( Bproject project,
int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ do_rps()

Tcl_Obj * do_rps ( Bproject project,
int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ do_set()

int do_set ( Bproject project,
int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ get_all_file_names() [1/2]

Bstring get_all_file_names ( Bproject project)

◆ get_all_file_names() [2/2]

Bstring get_all_file_names ( Bproject project,
Bstring  imgtype 
)

◆ part_fom()

Tcl_Obj * part_fom ( Bparticle part,
int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ part_select()

Tcl_Obj * part_select ( Bparticle part,
int  objc,
Tcl_Obj *CONST  objv[] 
)

◆ project_processing()

int project_processing ( Tcl_Interp *  interp,
int  objc,
Tcl_Obj *CONST  objv[] 
)

Implements the "Bmg" command in Tcl/Tk to access micrograph parameter files through Bsoft.

Parameters
*interpa Tcl interpreter within Tcl.
objcnumber of arguments passed (+1).
*objv[]arguments passed as Tcl objects.
Returns
int Tcl result.
Bmg command syntax:
    Bmg <action> <arguments>.
    where:
        action          "create", "exists", "read", "add", "write", "kill", "get", "set", 
                        "image_type", "rps", "ctf_fit", "update_matrices",
                        "unitcell_vectors"  "refine" "box" "filament" "node" "layerline" "spot" "marker"
        arguments               action-specific arguments:
            "create"            <number_micrographs> <number_reconstructions>
            "read"              <filename>
            "add"               <filename>
            "write"             <filename>
            "get"               <property> [arguments]
            "set"               <property> <value>
            "rps"
            "ctf_fit"           <level> <lores> <hires>
            "sort"              <tag>
            "update_matrices"
            "unitcell_vectors"
            "findaxis"          <axis> <step> <start> <end>
            "track"             <iterations> <refine_markers>
            "refine"            <operation>
            "box"               [arguments]
            "filament"          [arguments]
            "node"              [arguments]
            "layerline"         [arguments]
            "spot"              [arguments]
            "marker"            [arguments]
            where:
                property    "active <flag>"
                            "id <string>"
                            "id_from_index <mg_num>"
                            "img_num <mg_num>"
                            "number_of_mg"
                            "number_of_rec"
                            "number_of_part"
                            "field <string>"
                            "filename <string> <imgtype>"
                            "select <y/n>"
                            "fom <mg_num>"
                            "pixel_size <angstrom>"
                            "size <x> <y> <z>"
                            "origin <x> <y> <z> / <mg_num>"
                            "part_origin <x> <y> <z> / <part_num>"
                            "scale <x> <y> <z> / <mg_num>"
                            "dose" <electrons/Å2>
                            "intensity"
                            "defocus <angstrom>"
                            "defocus_deviation <angstrom>"
                            "astigmatism_angle <radians>"
                            "astigmatism <angstrom> <radians>"
                            "volt <volts>"
                            "Cs <angstrom>"
                            "amp_fac <fraction>"
                            "focal_length <angstrom>"
                            "aperture <angstrom>"
                            "slit_width <volts>"
                            "zero <angstrom>"
                            "baseline <string>"
                            "envelope <string>"
                            "view <mg_num>"
                            "axis [<radians>] <mg_num>"
                            "tilt [<radians>] <mg_num>"
                            "level [<radians>] <mg_num>"
                            "unitcell <ux> <uy> <vx> <vy>"
                            "helix_axis <radians>"
                            "helix_rise <angstrom>"
                            "helix_angle <radians>"
                            "helix_radius <angstrom>"
                            "box_size <x> <y> <z>"
                            "bad_radius <pixels>"
                            "filament_width <width>"
                            "filament_node_radius"
                            "marker_radius <pixels>"
Return values:
    Each action may have a return value:
        "create"    (none)
        "exists"    0=no, 1=yes
        "read"      micrograph id
        "write"     (none)
        "kill"      (none)
        "get"       return value based on property
        "set"       modify micrograph property

Variable Documentation

◆ imglist

Bimage* imglist
extern

◆ project

Bproject* project
extern

◆ verbose

int verbose
extern