From e2f206bca1267db883d13057f704984496c85473 Mon Sep 17 00:00:00 2001
From: Nicholas Shavers <nshavers@contractor.usgs.gov>
Date: Thu, 19 Dec 2024 11:35:42 -0800
Subject: [PATCH] import aggregation

---
 geomagio/Controller.py             |  6 +++---
 geomagio/imagcdf/ImagCDFFactory.py |  6 +++---
 geomagio/imagcdf/__init__.py       | 10 ++++++++++
 3 files changed, 16 insertions(+), 6 deletions(-)
 create mode 100644 geomagio/imagcdf/__init__.py

diff --git a/geomagio/Controller.py b/geomagio/Controller.py
index c79cdd16..d9b73750 100644
--- a/geomagio/Controller.py
+++ b/geomagio/Controller.py
@@ -26,7 +26,7 @@ from . import vbf
 from . import xml
 from . import covjson
 from . import netcdf
-from geomagio.imagcdf.ImagCDFFactory import ImagCDFFactory
+from . import imagcdf
 
 
 class Controller(object):
@@ -574,7 +574,7 @@ def get_input_factory(args):
             input_factory = covjson.CovJSONFactory(**input_factory_args)
         elif input_type == "imagcdf":
             input_factory_args["output"] = args.output
-            input_factory = ImagCDFFactory(**input_factory_args)
+            input_factory = imagcdf.ImagCDFFactory(**input_factory_args)
         # wrap stream
         if input_stream is not None:
             input_factory = StreamTimeseriesFactory(
@@ -667,7 +667,7 @@ def get_output_factory(args):
         elif output_type == "xml":
             output_factory = xml.XMLFactory(**output_factory_args)
         elif output_type == "imagcdf":
-            output_factory = ImagCDFFactory(**output_factory_args)
+            output_factory = imagcdf.ImagCDFFactory(**output_factory_args)
         # wrap stream
         if output_stream is not None:
             output_factory = StreamTimeseriesFactory(
diff --git a/geomagio/imagcdf/ImagCDFFactory.py b/geomagio/imagcdf/ImagCDFFactory.py
index 643238bc..72a0dc19 100644
--- a/geomagio/imagcdf/ImagCDFFactory.py
+++ b/geomagio/imagcdf/ImagCDFFactory.py
@@ -54,7 +54,7 @@ class ImagCDFFactory(TimeseriesFactory):
         urlTemplate="file://{obs}_{dt}_{t}.cdf",
         inputFile: Optional[str] = None,
         output: Optional[str] = "iaga2002",
-        urlInterval: int= -1
+        urlInterval: int = -1,
     ):
         """
         Initialize the ImagCDFFactory with default parameters.
@@ -74,7 +74,7 @@ class ImagCDFFactory(TimeseriesFactory):
             type=type,
             interval=interval,
             urlTemplate=urlTemplate,
-            urlInterval=urlInterval
+            urlInterval=urlInterval,
         )
         self.inputFile = inputFile
         self.output = (
@@ -846,7 +846,7 @@ class ImagCDFFactory(TimeseriesFactory):
             base_path = self.urlTemplate[7:]
             if not base_path or base_path == "{obs}_{dt}_{t}.cdf":
                 base_path = os.getcwd()  # Default to current working directory
-                return os.path.join(base_path,filename)
+                return os.path.join(base_path, filename)
             return os.path.join(self.urlTemplate, filename)
 
         # Unsupported URL scheme
diff --git a/geomagio/imagcdf/__init__.py b/geomagio/imagcdf/__init__.py
new file mode 100644
index 00000000..e7611ab4
--- /dev/null
+++ b/geomagio/imagcdf/__init__.py
@@ -0,0 +1,10 @@
+"""IO Module for ImagCDF Format
+"""
+
+from __future__ import absolute_import
+
+from .ImagCDFFactory import ImagCDFFactory
+from .IMCDFPublication import IMCDFPublicationLevel
+
+
+__all__ = ["ImagCDFFactory", "IMCDFPublicationLevel"]
-- 
GitLab