Files
sitk-registration-sys/cxx/ffi_extra.h

20 lines
938 B
C++

#pragma once
#include <sitkElastixImageFilter.h>
#include <memory>
#include <vector>
class ParameterMap {
public:
itk::simple::ElastixImageFilter::ParameterMapType parameters;
ParameterMap();
~ParameterMap();
explicit ParameterMap(itk::simple::ElastixImageFilter::ParameterMapType parameter_map);
void insert(const std::string &key, const std::vector<std::string> &value);
[[nodiscard]] std::unique_ptr<std::vector<std::string>> get(const std::string& key) const;
[[nodiscard]] std::unique_ptr<std::vector<std::string>> keys() const;
};
std::unique_ptr<ParameterMap> new_parameter_map();
std::unique_ptr<ParameterMap> get_default_parameter_map(const std::string& kind);
std::unique_ptr<ParameterMap> get_transform_parameter_map(itk::simple::ElastixImageFilter& tfilter, unsigned int index);
void set_parameter_map(itk::simple::ElastixImageFilter& tfilter, const std::unique_ptr<ParameterMap>& parameter_map);