aboutsummaryrefslogtreecommitdiffstats
path: root/dvb-t/uk-Reigate
blob: dd40fbf7b8d13593371fe4d968f589c2c222037a (plain)
1
2
3
4
5
6
7
8
9
10
# UK, Reigate
# Auto-generated from http://www.dtg.org.uk/retailer/dtt_channels.html
# and http://www.ofcom.org.uk/static/reception_advice/index.asp.html
# T freq bw fec_hi fec_lo mod transmission-mode guard-interval hierarchy
T 554000000 8MHz 3/4 NONE QAM16 2k 1/32 NONE
T 474000000 8MHz 2/3 NONE QAM64 2k 1/32 NONE
T 498000000 8MHz 2/3 NONE QAM64 2k 1/32 NONE
T 522000000 8MHz 3/4 NONE QAM16 2k 1/32 NONE
T 618167000 8MHz 3/4 NONE QAM16 2k 1/32 NONE
T 834000000 8MHz 3/4 NONE QAM16 2k 1/32 NONE
font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
/*
 * ESG parser
 *
 * Copyright (C) 2006 Stephane Este-Gracias (sestegra@free.fr)
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
 */

#ifndef _ESG_ENCAPSULATION_CONTAINER_H
#define _ESG_ENCAPSULATION_CONTAINER_H 1

#ifdef __cplusplus
extern "C"
{
#endif

#include <stdint.h>

/**
 * esg_container_structure structure.
 */
struct esg_container_structure {
	uint8_t type;
	uint8_t id;
	uint32_t ptr;
	uint32_t length;

	void *data;

	struct esg_container_structure *_next;
};

/**
 * esg_container_header structure.
 */
struct esg_container_header {
	uint8_t num_structures;
	struct esg_container_structure *structure_list;
};

/**
 * esg_container structure
 */
struct esg_container {
	struct esg_container_header *header;
	uint32_t structure_body_ptr;
	uint32_t structure_body_length;
	uint8_t *structure_body;
};

/**
 * Process an esg_container.
 *
 * @param buffer Binary buffer to decode.
 * @param size Binary buffer size.
 * @return Pointer to an esg_container structure, or NULL on error.
 */
extern struct esg_container *esg_container_decode(uint8_t *buffer, uint32_t size);

/**
 * Free an esg_container.
 *
 * @param container Pointer to an esg_container structure.
 */
extern void esg_container_free(struct esg_container *container);

/**
 * Convenience iterator for structure_list field of an esg_container_header.
 *
 * @param container The esg_container_header pointer.
 * @param structure Variable holding a pointer to the current esg_container_structure.
 */
#define esg_container_header_structure_list_for_each(header, structure) \
	for ((structure) = (header)->structure_list; \
	     (structure); \
	     (structure) = (structure)->_next)

#ifdef __cplusplus
}
#endif

#endif