ARTS 2.5.11 (git: 725533f0)
Array< base > Class Template Reference

This can be used to make arrays out of anything. More...

#include <array.h>

Inheritance diagram for Array< base >:

Public Member Functions

 Array ()
 
 Array (Index n)
 
 Array (Index n, const base &fillvalue)
 
 Array (const Array &A)
 
 Array (Array &&A) noexcept
 
 Array (std::initializer_list< base > init)
 
template<class base2 , size_t N>
 Array (const std::array< base2, N > &input)
 
 Array (std::vector< base > x)
 
Arrayoperator= (base x)
 
Arrayoperator= (const Array &A)
 
Arrayoperator= (Array &&A) noexcept
 
Index nelem () const ARTS_NOEXCEPT
 
const base & operator[] (const Index n) const
 
base & operator[] (const Index n)
 
void push_back_n (const base &elem, const Index n)
 
virtual ~Array ()=default
 

Friends

std::ostream & operator<< (std::ostream &os, const Array &v)
 

Detailed Description

template<class base>
class Array< base >

This can be used to make arrays out of anything.

A simple #define does not do for this, since I have to implement member functions like nelem, in order to be consistent with Vector.

Because constructors are not inherited, I have to re-define all constructors.

Definition at line 31 of file array.h.

Constructor & Destructor Documentation

◆ Array() [1/8]

template<class base >
Array< base >::Array ( )
inline

Definition at line 34 of file array.h.

◆ Array() [2/8]

template<class base >
Array< base >::Array ( Index  n)
inlineexplicit

Definition at line 36 of file array.h.

◆ Array() [3/8]

template<class base >
Array< base >::Array ( Index  n,
const base &  fillvalue 
)
inline

Definition at line 38 of file array.h.

◆ Array() [4/8]

template<class base >
Array< base >::Array ( const Array< base > &  A)
inline

Definition at line 42 of file array.h.

◆ Array() [5/8]

template<class base >
Array< base >::Array ( Array< base > &&  A)
inlinenoexcept

Definition at line 44 of file array.h.

◆ Array() [6/8]

template<class base >
Array< base >::Array ( std::initializer_list< base >  init)
inline

Definition at line 46 of file array.h.

◆ Array() [7/8]

template<class base >
template<class base2 , size_t N>
Array< base >::Array ( const std::array< base2, N > &  input)
inlineexplicit

Definition at line 49 of file array.h.

◆ Array() [8/8]

template<class base >
Array< base >::Array ( std::vector< base >  x)
inline

Definition at line 55 of file array.h.

◆ ~Array()

template<class base >
virtual Array< base >::~Array ( )
virtualdefault

Member Function Documentation

◆ nelem()

template<class base >
Index Array< base >::nelem ( ) const
inline

Definition at line 75 of file array.h.

References ARTS_ASSERT.

Referenced by abs_cia_dataReadFromCIA(), abs_cia_dataReadFromXML(), abs_hitran_relmat_dataReadHitranRelmatDataAndLines(), abs_lines_per_speciesBaseParameterMatchingLevels(), abs_lines_per_speciesChangeBaseParameterForMatchingLevels(), abs_lines_per_speciesChangeBaseParameterForSpecies(), abs_lines_per_speciesChangeBaseParameterForSpecies(), abs_lines_per_speciesCreateFromLines(), abs_lines_per_speciesCutoffSpecies(), abs_lines_per_speciesLinemixingLimitSpecies(), abs_lines_per_speciesLineShapeTypeSpecies(), abs_lines_per_speciesManualMirroringSpecies(), abs_lines_per_speciesMirroringSpecies(), abs_lines_per_speciesNormalizationSpecies(), abs_lines_per_speciesPopulationSpecies(), abs_lines_per_speciesReadSpeciesSplitCatalog(), abs_lines_per_speciesSetEmpty(), abs_lines_per_speciesT0Species(), abs_lines_per_speciesZeemanCoefficients(), abs_linesBaseParameterMatchingLevels(), abs_linesChangeBaseParameterForMatchingLevels(), abs_linesFlatten(), abs_linesRemoveBand(), abs_linesRemoveLinesFromSpecies(), abs_linesReplaceBands(), abs_linesReplaceLines(), abs_linesWriteSpeciesSplitCatalog(), abs_linesZeemanCoefficients(), abs_speciesDefineAllInScenario(), abs_xsec_agenda_checkedCalc(), abs_xsec_per_speciesAddCIA(), abs_xsec_per_speciesAddXsecFit(), GasAbsLookup::Adapt(), adapt_stepwise_partial_derivatives(), ArtsXMLTag::add_attribute(), SourceText::AdvanceChar(), SourceText::AdvanceLine(), AgRecord::AgRecord(), antenna1d_matrix(), antenna2d_gridded_dlos(), antenna2d_interp_response(), Append(), Append(), SourceText::AppendFile(), apply_iy_unit(), apply_iy_unit2(), ArrayOfAgendaAppend(), ArrayOfAgendaExecute(), ArrayOfGriddedFieldGetNames(), ArrayOfIndexExtractFromArrayOfArrayOfIndex(), ArrayOfIndexLinSpace(), atm_fields_compactAddConstant(), atm_fields_compactAddSpecies(), atm_fields_compactExpand(), atm_fields_compactFromMatrix(), atmfields_checkedCalc(), AtmFieldsAndParticleBulkPropFieldFromCompact(), AtmFieldsCalc(), AtmFieldsCalcExpand1D(), AtmRawRead(), AtmWithNLTERawRead(), batch_atm_fields_compactAddConstant(), batch_atm_fields_compactAddSpecies(), batch_atm_fields_compactCleanup(), calcBaselineFit(), check_abs_species(), check_disort_input(), check_disort_irradiance_input(), CheckUnique(), chk_contains(), chk_pnd_field_raw_only_in_cloudbox(), chk_pnd_raw_data(), chk_scat_species(), chk_scattering_data(), chk_size(), cia_get_index(), CIAInfo(), cloud_atm_vars_by_gp(), cloud_fieldsCalc(), cloud_RT_no_background(), cloudbox_checkedCalc(), cloudbox_field_monoOptimizeReverse(), cloudbox_field_monoSetConst(), cloudbox_fieldDisort(), cloudbox_fieldDisortWithARTSSurface(), cloudbox_fieldUpdate1D(), cloudbox_fieldUpdateSeq1D(), cloudbox_fieldUpdateSeq3D(), cloudboxOff(), cloudboxSetFullAtm(), cloudboxSetManually(), collision_coefficientsFromSplitFiles(), lm_hitran_2017::compabs(), TelsemAtlas::contains(), covmat_sxAddBlock(), covmat_sxAddInverseBlock(), cumulative_transmission(), CIARecord::Dataset(), CIARecord::DatasetCount(), define_md_data_raw(), define_md_map(), define_wsv_group_map(), DOBatchCalc(), doit_scat_fieldCalc(), doit_scat_fieldCalcLimb(), DoitGetIncoming(), DoitGetIncoming1DAtm(), DoitInit(), DoitScatteringDataPrepare(), DoitWriteIterationFields(), dsurface_check(), Absorption::LineMixing::ecs_absorption(), ecs_dataAddMeanAir(), Agenda::execute(), expand_md_data_raw_to_md_data(), ext_abs_pfun_from_tro(), Extract(), Extract(), GasAbsLookup::Extract(), Extract(), Extract(), Extract(), XsecRecord::Extract(), ExtractFromMetaSingleScatSpecies(), field_of_propagation(), FieldFromGriddedField(), SourceText::File(), find_all(), find_effective_channel_boundaries(), find_file(), find_first(), Raw::Reduce::find_first_and_last_1(), find_new_grid_in_old_grid(), find_xml_file(), find_xml_file_existence(), flat_index(), CIARecord::FrequencyGrid(), get_angs(), get_direct_radiation(), get_dirname(), get_gp_rq_to_atmgrids(), get_gp_rq_to_atmgrids(), get_iy_of_background(), get_parameters(), get_pointers_for_analytical_species(), get_pointers_for_scat_species(), get_standard_diy_dpath(), get_standard_starting_diy_dx(), get_stepwise_scattersky_source(), get_sun_background(), get_sun_ppaths(), EnergyLevelMap::get_vibtemp_params(), SourceText::GetSourceLine(), gp4length1grid(), GriddedFieldLatLonExpand(), GriddedFieldLatLonRegrid(), GriddedFieldPRegrid(), gridpos_upperend_check(), hitran_xsec_get_index(), HydrotableCalc(), IndexSetToLast(), SourceText::Init(), insert_elements(), insert_elements(), interp(), interp(), interp(), interp(), interp(), interp(), interp(), interp(), interp(), interp(), interp(), interp_atmfield_by_itw(), interp_atmfield_gp2itw(), interp_atmsurface_by_itw(), interp_atmsurface_gp2itw(), interp_cloud_coeff1D(), EnergyLevelMap::InterpToGridPos(), interpweights(), interpweights(), interpweights(), interpweights(), interpweights(), interpweights(), interpweights(), interpweights(), interpweights(), interpweights(), interpweights(), is_anyptype_nonTotRan(), Agenda::is_input(), is_inside_cloudbox(), Agenda::is_output(), iy_transmitterMultiplePol(), iy_transmitterSinglePol(), iyApplyUnit(), iyb_calc(), iyClearsky(), iyEmissionHybrid(), iyEmissionStandard(), iyInterpCloudboxField(), iyMC(), iyRadarSingleScat(), iyReplaceFromAux(), iySurfaceFastem(), iySurfaceLambertian(), iySurfaceLambertianDirect(), iySurfaceRtpropCalc(), iyTransmissionStandard(), jac_ranges_indices(), jacobian_type_extrapol(), jacobianAddAbsSpecies(), jacobianAddBasicCatalogParameter(), jacobianAddBasicCatalogParameters(), jacobianAddFreqShift(), jacobianAddFreqStretch(), jacobianAddMagField(), jacobianAddNLTE(), jacobianAddPointingZa(), jacobianAddPolyfit(), jacobianAddScatSpecies(), jacobianAddShapeCatalogParameters(), jacobianAddSinefit(), jacobianAddSpecialSpecies(), jacobianAddSurfaceQuantity(), jacobianAddTemperature(), jacobianAddWind(), jacobianAdjustAndTransform(), jacobianCalcFreqShift(), jacobianCalcFreqStretch(), jacobianCalcPointingZaInterp(), jacobianCalcPointingZaRecalc(), jacobianCalcPolyfit(), jacobianCalcSinefit(), jacobianSetAffineTransformation(), last(), lbl_checkedCalc(), line_irradianceCalcForSingleSpeciesNonOverlappingLinesPseudo2D(), main(), main(), MCGeneral(), MdRecord::MdRecord(), mean_time(), Raw::Average::median(), met_mm_polarisation_hmatrix(), LineShape::ModelMetaDataArray(), Raw::Average::nanmedian(), nca_get_data(), Agenda::nelem(), Workspace::nelem(), Quantum::Number::ValueList::nelem(), nelemGet(), nlte_collision_factorsCalcFromCoeffs(), nlte_fieldForSingleSpeciesNonOverlappingLines(), nlte_positions_in_statistical_equilibrium_matrix(), nlte_sourceFromTemperatureAndSrcCoefPerSpecies(), Absorption::Lines::NumBroadeners(), EnergyLevelMap::OK(), open_input_file(), Array< base >::operator[](), Array< base >::operator[](), opt_prop_NScatElems(), opt_prop_sptFromData(), opt_prop_sptFromMonoData(), opt_prop_sptFromScat_data(), OptimizeDoitPressureGrid(), option_input(), option_methods(), ArtsParser::parse_agenda(), ArtsParser::parse_generic_input(), ArtsParser::parse_generic_output(), ArtsParser::parse_intvector_from_string(), ArtsParser::parse_numvector(), ArtsParser::parse_numvector_from_string(), ArtsParser::parse_stringarray_from_string(), particle_bulkprop_fieldClip(), particle_bulkpropRadarOnionPeeling(), particle_massesFromMetaData(), particle_massesFromMetaDataSingleCategory(), pha_mat_NScatElems(), pha_mat_sptFromData(), pha_mat_sptFromDataDOITOpt(), pha_mat_sptFromMonoData(), pha_mat_sptFromScat_data(), pnd_agenda_arrayExecute(), pnd_fieldCalcFromParticleBulkProps(), pnd_fieldCalcFrompnd_field_raw(), pnd_fieldZero(), pndFromPsd(), ppath_calc(), ppath_end_1d(), ppath_end_2d(), ppath_end_3d(), ppath_step_refr_1d(), ppath_step_refr_2d(), ppath_step_refr_3d(), Print(), Print(), Print(), Print(), Agenda::print(), MRecord::print(), Print(), MdRecord::PrintTemplate(), propmat_clearskyAddCIA(), propmat_clearskyAddFaraday(), propmat_clearskyAddHitranLineMixingLines(), propmat_clearskyAddLines(), propmat_clearskyAddOnTheFlyLineMixing(), propmat_clearskyAddOnTheFlyLineMixingWithZeeman(), propmat_clearskyAddParticles(), propmat_clearskyAddPredefined(), propmat_clearskyAddScaledSpecies(), propmat_clearskyAddXsecFit(), propmat_clearskyAddZeeman(), propmat_clearskyInit(), psd_mono_common(), psdMilbrandtYau05(), psdSeifertBeheng06(), RadarOnionPeelingTableCalc(), SourceText::reachedEot(), ReadArrayOfARTSCAT(), ReadARTSCAT(), ReadHITRAN(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), Reduce(), reduced_1datm(), refr_index_airFreeElectrons(), refr_index_airMicrowavesEarth(), refr_index_airMicrowavesGeneral(), regrid_atmfield_by_gp(), regrid_atmfield_by_gp_oem(), regrid_atmsurf_by_gp(), regrid_atmsurf_by_gp_oem(), regrid_sun_spectrum(), remove_impl(), retrievalAddAbsSpecies(), retrievalAddCatalogParameters(), retrievalAddFreqShift(), retrievalAddFreqStretch(), retrievalAddMagField(), retrievalAddPointingZa(), retrievalAddScatSpecies(), retrievalAddSpecialSpecies(), retrievalAddSurfaceQuantity(), retrievalAddTemperature(), retrievalAddWind(), rtmethods_jacobian_finalisation(), run_cdisort(), run_cdisort_flux(), scat_data_checkedCalc(), scat_data_monoCalc(), scat_data_monoExtract(), scat_dataCalc(), scat_dataCheck(), scat_dataReduceT(), ScatElementsPndAndScatAdd(), ScatElementsSelect(), ScatElementsToabs_speciesAdd(), ScatSpeciesExtendTemperature(), ScatSpeciesMerge(), ScatSpeciesPndAndScatAdd(), ScatSpeciesScatAndMetaRead(), ScatSpeciesSizeMassInfo(), Select(), Select(), Select(), Select(), Select(), Absorption::Lines::SelfVMR(), sensor_aux_vectors(), sensor_checkedCalc(), sensor_responseFillFgrid(), sensor_responseGenericAMSU(), sensor_responseMetMM(), sensor_responseMixer(), sensor_responseMixerBackendPrecalcWeights(), sensor_responseMultiMixerBackend(), sensor_responsePolarisation(), sensor_responseStokesRotation(), sensor_responseWMRF(), set_backscatter_radiation_vector(), Agenda::set_outputs_to_push_and_dup(), Absorption::LineMixing::PopulationAndDipole::sort(), spectral_irradiance_fieldDisort(), spectral_radiance_fieldClearskyPlaneParallel(), spectral_radiance_fieldCopyCloudboxField(), spectral_radiance_fieldExpandCloudboxField(), spectrometer_matrix(), stepwise_source(), stepwise_transmission(), MdRecord::subst_any_with_group(), MdRecord::subst_any_with_specific_group(), surface_props_check(), surface_props_interp(), surface_rtprop_agenda_arrayExecute(), surface_rtpropFromTypesAverage(), surface_rtpropFromTypesManual(), surface_rtpropFromTypesNearest(), SurfaceDummy(), ArtsParser::tasklist_insert_set_delete(), CIARecord::TemperatureGrid(), test_agenda_arrayExecute(), TestArrayOfAgenda(), time_steps(), time_vector(), TimeSortTemplate(), transform_jacobian(), transform_x(), transform_x_back(), transmittanceFromIy_aux(), ArtsParser::use_default_method_args(), VectorInsertGridPoints(), vmr_fieldClip(), vmr_fieldPerturb(), vmr_fieldPerturbAtmGrids(), WMRFSelectChannels(), Workspace::Workspace(), write_method_header(), write_method_header_documentation(), Workspace::wsvs(), x2artsAtmAndSurf(), x2artsSensor(), xClip(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), xml_write_to_stream(), yApplySensorPol(), ybatchCalc(), ybatchColdAtmHotAtmCycle(), ybatchMetProfiles(), ybatchMetProfilesClear(), ybatchTimeAveraging(), yCalc(), yCalcAppend(), yRadar(), za_gridOpt(), and zeeman_on_the_fly().

◆ operator=() [1/3]

template<class base >
Array & Array< base >::operator= ( Array< base > &&  A)
inlinenoexcept

Definition at line 69 of file array.h.

◆ operator=() [2/3]

template<class base >
Array & Array< base >::operator= ( base  x)
inline

Definition at line 58 of file array.h.

Referenced by ArrayOfSpeciesTag::operator=().

◆ operator=() [3/3]

template<class base >
Array & Array< base >::operator= ( const Array< base > &  A)
inline

Definition at line 63 of file array.h.

◆ operator[]() [1/2]

template<class base >
base & Array< base >::operator[] ( const Index  n)
inline

Definition at line 88 of file array.h.

References ARTS_ASSERT, and Array< base >::nelem().

◆ operator[]() [2/2]

template<class base >
const base & Array< base >::operator[] ( const Index  n) const
inline

Definition at line 82 of file array.h.

References ARTS_ASSERT, and Array< base >::nelem().

◆ push_back_n()

template<class base >
void Array< base >::push_back_n ( const base &  elem,
const Index  n 
)
inline

Definition at line 95 of file array.h.

Friends And Related Symbol Documentation

◆ operator<<

template<class base >
std::ostream & operator<< ( std::ostream &  os,
const Array< base > &  v 
)
friend

Definition at line 101 of file array.h.


The documentation for this class was generated from the following file: