EleFits  5.0.0
A modern C++ API on top of CFITSIO
Namespaces | Typedefs | Enumerations | Classes | Functions
Euclid::Fits Namespace Reference

Detailed Description

Wrapper classes to read and write FITS file contents.

There are two types of classes:

  1. Service classes offer read/write services:
    • File handlers (XxxFile classes) only store index and type of HDUs which have already been accessed.
    • HDU handlers (XxxHdu classes) only provide read/write services. When you access an HDU, you just access a set of services to read and write items in this HDU.
  2. Data classes – Record, Raster and Column – store data to be read and written.

The following naming conventions are adopted:

Namespaces

namespace  String
 String-related utilities.
 
namespace  Test
 Test-related classes and functions.
 

Typedefs

template<typename T , long N = 1>
using PtrColumn = Column< T, N, T * >
 Column which points to some external data (TContainer = T*).
 
template<typename T , long N = 1>
using VecColumn = Column< T, N, std::vector< T > >
 Column which owns a data vector (TContainer = std::vector<T>).
 
template<typename TReturn >
using Named = TypedKey< TReturn, std::string >
 Deprecated alias for named keys. More...
 
template<typename TReturn >
using Indexed = TypedKey< TReturn, long >
 Deprecated alias for indexed keys. More...
 
template<typename T , long N = 2>
using PtrRaster = Raster< T, N, T * >
 Raster which points to some external data (TContainer = T*).
 
template<typename T , long N = 2>
using VecRaster = Raster< T, N, std::vector< T > >
 Raster which owns a data vector (TContainer = std::vector<T>).
 
using VariantValue = boost::any
 The variant value type for records. More...
 
using RecordSeq = RecordVec< VariantValue >
 A sequence of records of any type.
 

Enumerations

enum class  FileMode {
  Read ,
  Edit ,
  Create ,
  Write ,
  Overwrite ,
  Temporary
}
 FITS file read/write permissions. More...
 
enum class  RecordMode {
  CreateOrUpdate ,
  CreateUnique ,
  CreateNew ,
  UpdateExisting
}
 Record writing modes. More...
 

Classes

class  BintableColumns
 Column-wise reader-writer for the binary table data unit. More...
 
class  BintableHdu
 Binary table HDU reader-writer. More...
 
struct  ChecksumError
 Exception thrown if a checksum is missing or incorrect. More...
 
class  Column
 Binary table column data and metadata. More...
 
struct  ColumnInfo
 Column informations, i.e. name, unit, entry shape and value type. More...
 
class  ColumnKey
 A lazy-evaluated column key initialized either with an index or a name. More...
 
struct  ContiguousContainerMixin
 Base class for a FITS data container. More...
 
class  DataContainer
 Mix ContiguousContainerMixin and VectorArithmeticMixin into a DataHolder as a user-defined derived class. More...
 
class  DataContainerHolder
 A holder of any contiguous container specified by a size and data pointer. More...
 
class  DataContainerHolder< T, std::array< T, N > >
 std::array specialization. More...
 
class  DataContainerHolder< T, T * >
 Raw pointer specialization. More...
 
class  FileMemRegions
 Mapping between an in-file (FITS image data unit) region and an in-memory (raster) region for reading and writing image regions. More...
 
class  FileMemSegments
 Mapping between an in-file (FITS binary table data unit) segment and an in-memory (column) segment for reading and writing bintable segments. More...
 
class  FitsError
 Base of all exceptions thrown directly by the library. More...
 
class  FitsFile
 FITS file reader-writer. More...
 
class  GameOfLife
 A Game of Life as an example usage of Raster and a few features like slicing. More...
 
class  Hdu
 Base class for ImageHdu and BintableHdu. More...
 
class  HduCategory
 An extensible HDU categorization for filtering and iteration. More...
 
class  HduFilter
 HDU filter built from HDU categories. More...
 
class  HduIterator
 Iterator for MefFile's HDUs. More...
 
class  HduSelector
 Helper class to provide filtered iterators. More...
 
class  Header
 Reader-writer for the header unit. More...
 
class  ImageHdu
 Image HDU reader-writer. More...
 
class  ImageRaster
 Reader-writer for the image data unit. More...
 
class  KeywordCategory
 Keyword categories and related tools. More...
 
struct  KeywordExistsError
 Exception thrown when a keyword already exists. More...
 
struct  KeywordNotFoundError
 Exception thrown when a keyword is not found. More...
 
class  MefFile
 Multi-Extension FITS file reader-writer. More...
 
class  OutOfBoundsError
 Exception thrown if a value lies out of given bounds. More...
 
class  Position
 n-dimensional pixel position or image shape, i.e. set of integer coordinates. More...
 
class  PositionIterator
 A helper class to screen a Region. More...
 
class  ProgramOptions
 Helper class to declare positional and named options, and help message. More...
 
class  Raster
 Data of a n-dimensional image (2D by default). More...
 
class  ReadOnlyError
 Exception thrown if trying to write a read-only file. More...
 
struct  Record
 Keyword-value pair with optional unit and comment. More...
 
class  RecordVec
 A vector of records with find and conversion services. More...
 
struct  Region
 A n-D rectangle region, defined by its front and back positions (both inclusive), or front position and shape. More...
 
struct  Segment
 Bounds of a closed index interval. More...
 
class  SifFile
 Single image FITS file handler. More...
 
struct  TypedKey
 A light structure to bind a return type and a key, e.g. for reading records and columns. More...
 
struct  VectorArithmeticMixin
 Mixin to provide vector space arithmetics to a container. More...
 
struct  VectorArithmeticMixin< T, TDerived, true >
 Mixin to provide vector space arithmetics to a container. More...
 

Functions

std::string version ()
 Version number of the EleFits project.
 
template<typename TSeq >
constexpr bool isTuple ()
 Test whether a sequence is a tuple.
 
template<typename TReturn , typename TTuple >
TReturn tupleAs (TTuple &&tuple)
 Convert a tuple to a custom structure.
 
template<typename TTuple , typename TFunc >
constexpr decltype(auto) tupleApply (TTuple &&tuple, TFunc &&func)
 Apply a variadic function a tuple.
 
template<typename TIteratorTuple , typename TFunc >
constexpr decltype(auto) iteratorTupleApply (TIteratorTuple &&tuple, TFunc &&func)
 Apply a variadic function to elements pointed by a tuple of iterators and increment the iterators.
 
template<typename TSeq , typename TFunc >
std::enable_if_t< isTuple< TSeq >()> seqForeach (TSeq &&seq, TFunc &&func)
 Apply a void-returning function to each element of a sequence.
 
template<typename TSeq , typename TFunc >
std::enable_if_t< not isTuple< TSeq >()> seqForeach (const TSeq &seq, TFunc &&func)
 Apply a void-returning function to each element of a sequence. More...
 
template<typename TSeq , typename TFunc >
std::enable_if_t< not isTuple< TSeq >()> seqForeach (TSeq &seq, TFunc &&func)
 Apply a void-returning function to each element of a sequence. More...
 
template<typename TReturn , typename TSeq , typename TFunc >
std::enable_if_t< isTuple< TSeq >(), TReturn > seqTransform (TSeq &&seq, TFunc &&func)
 Apply a transform to each element of a sequence and create a user-defined struct from the results.
 
template<typename TReturn , typename TSeq , typename TFunc >
std::enable_if_t< not isTuple< TSeq >(), TReturn > seqTransform (const TSeq &seq, TFunc &&func)
 Apply a transform to each element of a sequence and create a user-defined struct from the results. More...
 
template<typename TLogger , typename T0 , typename... Ts>
void logArgs (TLogger &&logger, T0 &&arg0, Ts &&... args)
 Log a heterogeneous list of arguments. More...