Skip to content

biomicroscopy/BfmDevFramework

Repository files navigation

BfmDevFramework

Ultrasound Beamformer Development Framework for C++ and CUDA

Table of Contents

Requirements

To pull and work with this repository, ensure you have the following:

  1. Git Large File Storage (LFS)

    • This repository uses Git LFS to handle large files.
    • Install Git LFS and initialize it in your environment:
      git lfs install
  2. MATLAB

    • You will need MATLAB installed to access necessary mex headers.
    • Ensure MATLAB is added to your system path:
      • On Windows: Follow these instructions.
      • On macOS/Linux: Typically, you can add MATLAB to your path by editing your shell profile (e.g., .bashrc or .zshrc) with:
        export PATH="/Applications/MATLAB_<version>.app/bin:$PATH"  # Update version as necessary

API Hierarchy

├── 📂 include/ # Header files
│ ├── bfm.h # Main entry point of the API | Contains all necessary includes
│ ├── bfm_preproc.h # Stores all preprocessing algorithms
│ ├── bfm_midproc.h # Stores all beamforming algorithms
│ ├── bfm_postproc.h # Stores all postprocessing algorithms
│ ├── bfm_Thread.h # Contains helpful data-handling parallel methods to call
│ ├── bfm_noThread.h # Contains helpful data-handling non-parallel Methods to call
│ ├── namespace_funcs.h # Contains miscellaneous helper functions
│ └── object_store.h # Main datastore class to handle Matlab data translation and storage
├── 📂 src/ # API implementation files
│ ├── 📂 ifiles/ # Implementation files corresponding to the headers in include/
│ │ ├── bfm_preproc.cpp
│ │ ├── bfm_midproc.cpp
│ │ ├── bfm_postproc.cpp
│ │ ├── bfm_Thread.cpp
│ │ ├── bfm_noThread.cpp
│ │ └── object_store.cpp
│ └── main.cpp # Main datastore class to handle Matlab data translation and storage
├── 📂 testing/ # Development testing folder
├── 📂 unit_tests/ # Organized unit tests
├── 📄 CMakeLists.txt # Subdirectory CMake configuration file for mex generation
└── 📄 run_tests.sh # Shell script to be called by cmake for unit testing

About

Ultrasound Beamformer Development Framework for C++ and CUDA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5