Loading [MathJax]/extensions/TeX/AMSsymbols.js
LAL 7.7.0.1-5e288d3
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
LALDictSequence.h
Go to the documentation of this file.
1/*
2* Copyright (C) 2023 Jolien Creighton
3*
4* This program is free software; you can redistribute it and/or modify
5* it under the terms of the GNU General Public License as published by
6* the Free Software Foundation; either version 2 of the License, or
7* (at your option) any later version.
8*
9* This program is distributed in the hope that it will be useful,
10* but WITHOUT ANY WARRANTY; without even the implied warranty of
11* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12* GNU General Public License for more details.
13*
14* You should have received a copy of the GNU General Public License
15* along with with program; see the file COPYING. If not, write to the
16* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17* MA 02110-1301 USA
18*/
19
20#ifndef _LAL_DICTSEQUENCE_H
21#define _LAL_DICTSEQUENCE_H
22
23#include <stddef.h>
24#include <lal/LALDatatypes.h>
25#include <lal/LALDict.h>
26
27#ifdef __cplusplus
28extern "C" {
29#elif 0
30} /* so that editors will match preceding brace */
31#endif
32
34 size_t length;
35 LALDict **data;
36};
37typedef struct tagLALDictSequence LALDictSequence;
38
39void XLALDestroyDictSequence(LALDictSequence *sequence);
40LALDictSequence * XLALCreateDictSequence(size_t length);
41LALDictSequence * XLALCutDictSequence(const LALDictSequence *sequence, size_t first, size_t length);
42LALDictSequence * XLALCopyDictSequence(const LALDictSequence *sequence);
43void XLALRollDictSequence(LALDictSequence *sequence, int count);
44void XLALShiftDictSequence(LALDictSequence *sequence, int count);
45LALDictSequence * XLALResizeDictSequence(LALDictSequence *sequence, int first, size_t length);
46
47size_t XLALDictSequenceLength(LALDictSequence *sequence);
48LALDict * XLALDictSequenceGet(LALDictSequence *sequence, int pos);
49int XLALDictSequenceSet(LALDictSequence *sequence, LALDict *inparmas, int pos);
50
51#if 0
52{ /* so that editors will match succeeding brace */
53#elif defined(__cplusplus)
54}
55#endif
56#endif /* _LAL_DICTSEQUENCE_H */
void XLALDestroyDictSequence(LALDictSequence *sequence)
LALDictSequence * XLALCopyDictSequence(const LALDictSequence *sequence)
void XLALRollDictSequence(LALDictSequence *sequence, int count)
LALDict * XLALDictSequenceGet(LALDictSequence *sequence, int pos)
LALDictSequence * XLALResizeDictSequence(LALDictSequence *sequence, int first, size_t length)
int XLALDictSequenceSet(LALDictSequence *sequence, LALDict *inparmas, int pos)
void XLALShiftDictSequence(LALDictSequence *sequence, int count)
LALDictSequence * XLALCutDictSequence(const LALDictSequence *sequence, size_t first, size_t length)
LALDictSequence * XLALCreateDictSequence(size_t length)
size_t XLALDictSequenceLength(LALDictSequence *sequence)