Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
6e190dd
Merge tag 'v3.8.2' into develop
nsoblath-pnnl Sep 20, 2021
534dbcc
Updated Scarab to v3.9.3
nsoblath-pnnl Apr 12, 2023
1504362
Copied M3 over to M4 and tested building of the M4 library (still use…
nsoblath-pnnl Apr 12, 2023
b4ac2dc
Add copying of std::exception to M4Exception
nsoblath-pnnl Apr 13, 2023
c7c0962
Initial z5 inclusion and use of Zarr at the Monarch/File level.
nsoblath-pnnl Apr 13, 2023
32e9e93
Further work on M4Header, M4Monarch, and M4Stream
nsoblath-pnnl Apr 14, 2023
55c511c
Additional build changes to use in z5
nsoblath-pnnl Apr 28, 2023
9ba32e5
Very temporary executables to demonstrate and practice the use of z5
nsoblath-pnnl Apr 28, 2023
3b7d270
Progress on writing data
nsoblath-pnnl Jun 2, 2023
79b9262
Incremental progress
nsoblath-pnnl Jul 25, 2023
952411c
create Doxyfile for graphical analysis
Aug 16, 2023
a6b0ab2
add function header Doxygen documentation to M4Header components
Aug 22, 2023
b8df8a3
working on z5 testing with existing read and write programs that Noah…
Aug 22, 2023
ffcee8d
read and write operations working on file
Aug 22, 2023
15363ee
Working on reading streams from file
Aug 23, 2023
02412e4
working on reading streams
Aug 28, 2023
3f09999
First clean operation of reading from streams
Aug 28, 2023
cecf7bc
unique data per stream to validate identity of each stream/record
Aug 29, 2023
93c9e29
write/read unique data for two-scan datasets - base/inline version
Sep 7, 2023
2ff2255
misc updates/refinements to comments, etc. basic data
Sep 7, 2023
e6bf0f8
refinements for better documented code
Sep 8, 2023
e932bf5
create shorter typedefs for z5::xxxx datatypes to help with understan…
Sep 8, 2023
5e1c02c
forgot to save file
Sep 8, 2023
d840c8d
writeMonarch program - work in progress
Sep 15, 2023
7662aca
work in progress
Sep 18, 2023
427fcd8
work in progress
Sep 18, 2023
7175ee3
work in progress
Sep 19, 2023
4e7020a
work in progress
Sep 19, 2023
eb339b0
work in progress
Sep 20, 2023
f7e4d0e
readMonarch: cleaner read of Monarch4 header, using ostream printing
Sep 20, 2023
a17b196
initial operation M4Header::WriteChannelStreams()
Sep 25, 2023
05eb10c
writing channel groups correctly, working on attributes
Sep 25, 2023
094cd66
M4ChannelHeader::WriteToFile() writes channel attrs to correct position
Sep 25, 2023
b5c0ec8
M4Header::WriteChannelStreams() writes buffers to acquisitions group
Sep 25, 2023
b29780a
M4Header::WriteChannelStreams() writes acquisitions in correct place
Sep 26, 2023
d9fa899
M4Header::WriteChannelCoherence() first operation
Sep 26, 2023
fc06629
channel and stream groups written to hierarchy
Sep 26, 2023
92d25cc
M4Header::ReadChannelCoherence() first operation
Sep 26, 2023
8b3a06f
preparing for integrating stream M4Stream objects
Sep 28, 2023
aeba10a
state at end FY23
Sep 29, 2023
4383400
add missing test files
Oct 31, 2023
7f8a444
M4Header: read/write channel-streams - have to reverse col/row to row…
Nov 6, 2023
bbc2d7b
Create attribute entry for number of streams in run
Nov 7, 2023
4da1d6d
writeMonarch test print StreamHeader and ChannelHeader metadata for r…
Nov 7, 2023
a3b71c3
M4StreamHeader::ReadFromFile() operational
Nov 7, 2023
ea03abe
M4ChannelHeader::ReadFromFile() operational
Nov 7, 2023
bca8d6d
update nlohmann::json conversions with casts
Nov 14, 2023
bf62a2e
remove some of the logging messages to improve readability
Nov 21, 2023
4c715ab
change z5/Zarr file reference to pointer to enable cleaner integration
Nov 21, 2023
beb260b
Update group pointers
Nov 21, 2023
48f6abf
M4Monarch::WriteHeader()
Nov 30, 2023
0b4148b
create z5includes.hh to isolate z5/Zarr definitions for reuse
Dec 1, 2023
8a01629
change z5 'typedefs' to 'using', clean compile
Dec 11, 2023
e37f844
working on creating streams issues
Dec 11, 2023
b256566
partial answer to segfault creating streams, need to fix permanently
Dec 11, 2023
7c10fe3
improved CTOR operation for M4Stream
Dec 18, 2023
1d461dd
improved CTOR operation for M4Stream
Dec 18, 2023
5e0cfe2
working M4Stream::FinalizeStream(), M4Stream::FinalizeCurrentAcq()
Dec 18, 2023
baaf1d8
final adaptation of M4Stream::Initialize() to z5/Zarr first clean build
Dec 29, 2023
3b15fcc
M4Stream finalizations working properly, attribute values look corrrect
Dec 29, 2023
000a240
release std::unique_ptr with reset() instead of release() which doesn…
Dec 29, 2023
012d58f
working on handling empty acquisitions properly
Dec 30, 2023
6ef3e54
handling empty acquisitions properly during read
Dec 30, 2023
2139a88
M4Stream CTOR()/initialize() harmonized write/read operation
Jan 1, 2024
d13bddb
adapt M4Stream::BuildIndex()
Jan 1, 2024
688bc00
working on adapting M4Stream::ReadRecordAsIs() and M4Stream::WriteRec…
Jan 2, 2024
a846cd5
Monarch4 pause: Jan2024
Jan 17, 2024
7a80e67
Merge tag 'v3.8.3' into develop
nsoblath Jan 14, 2025
ebf9712
Merge tag 'v3.8.4' into develop
nsoblath Jan 16, 2025
3a3ef91
Merge tag 'v3.8.5' into develop
nsoblath Feb 18, 2025
e3306c5
Merge tag 'v3.8.6' into develop
nsoblath Jan 20, 2026
b7ebe31
Merge tag 'v3.8.7' into develop
nsoblath Jan 23, 2026
7e8cbf9
Merge branch 'develop' into feature/zarr
nsoblath-pnnl Mar 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 36 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,16 @@ project( Monarch VERSION 3.8.7 )
list( APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/Scarab/cmake)
include( PackageBuilder )

set( CMAKE_CXX_STANDARD 17 )

# Egg file version
set( Egg_VERSION "3.2.0" )
set( Egg_VERSION "4.0.0" )
add_definitions( -DEgg_VERSION=${Egg_VERSION} )

# Monarch library options
set( Monarch_BUILD_MONARCH2 FALSE CACHE BOOL "Build Monarch2 library (requires Protobuf)" )
set( Monarch_BUILD_MONARCH3 TRUE CACHE BOOL "Build Monarch3 library (requires HDF5)" )
set( Monarch_BUILD_MONARCH3 FALSE CACHE BOOL "Build Monarch3 library (requires HDF5)" )
set( Monarch_BUILD_MONARCH4 TRUE CACHE BOOL "Build Monarch4 library (requires Zarr)" )


########################
Expand All @@ -26,6 +29,32 @@ set( Monarch_BUILD_MONARCH3 TRUE CACHE BOOL "Build Monarch3 library (requires HD

set( PUBLIC_EXT_LIBS_M2 )
set( PUBLIC_EXT_LIBS_M3 )
set( PUBLIC_EXT_LIBS_M4 )
set( PRIVATE_EXT_LIBS_M4 )


######
# Zarr
######

if( Monarch_BUILD_MONARCH4 )
# set( Monarch_BUILD_MONARCH3 TRUE CACHE BOOL "Build Monarch3 library (requires HDF5)" )
message("Build Monarch4 library (requires Zarr)")

find_package( z5 REQUIRED )
find_package(xtl REQUIRED)
find_package( xtensor REQUIRED )
include_directories( BEFORE
${PROJECT_SOURCE_DIR}/Monarch4
${z5_INCLUDE_DIRS}
)
list( APPEND PUBLIC_EXT_LIBS_M4
nlohmann_json::nlohmann_json
xtensor
)

endif( Monarch_BUILD_MONARCH4 )


######
# HDF5
Expand Down Expand Up @@ -115,6 +144,7 @@ if( Monarch_BUILD_MONARCH3 )

endif( Monarch_BUILD_MONARCH3 )

list( APPEND PUBLIC_EXT_LIBS_M4 ${PUBLIC_EXT_LIBS_M3} )

##########
# Protobuf
Expand Down Expand Up @@ -161,6 +191,10 @@ if( Monarch_BUILD_MONARCH3 )
add_subdirectory( Monarch3 )
endif( Monarch_BUILD_MONARCH3 )

if( Monarch_BUILD_MONARCH4 )
add_subdirectory( Monarch4 )
endif( Monarch_BUILD_MONARCH4 )


##################
# package config #
Expand Down
Loading