This product is licensed for use and distribution under the BSD Open Source License.
see the file COPYING for more details.
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
-OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
-OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#define __NMEAP_DEF_H__
/**
- * context for a single sentence
+ * context for a single sentence
*/
typedef struct nmeap_sentence {
char name[NMEAP_MAX_SENTENCE_NAME_LENGTH + 1];
void *data;
} nmeap_sentence_t;
-/**
+/**
* parser context
*/
struct nmeap_context {
/** support up to 8 sentences */
nmeap_sentence_t sentence[NMEAP_MAX_SENTENCES]; /* sentence descriptors */
int sentence_count; /* number of initialized descriptors */
-
+
/** sentence input buffer */
char input[NMEAP_MAX_SENTENCE_LENGTH + 1]; /* input line buffer */
int input_count; /* index into 'input */
int input_state; /* current lexical scanner state */
char input_name[6]; /* sentence name */
- char icks; /* input checksum */
- char ccks; /* computed checksum */
-
+ char icks; /* input checksum */
+ char ccks; /* computed checksum */
+
/* tokenization */
char *token[NMEAP_MAX_TOKENS]; /* list of delimited tokens */
int tokens; /* list of tokens */
-
+
/** errors and debug. optimize these as desired */
unsigned long msgs; /* count of good messages */
- unsigned long err_hdr; /* header error */
+ unsigned long err_hdr; /* header error */
unsigned long err_ovr; /* overrun error */
unsigned long err_unk; /* unknown error */
unsigned long err_id; /* bad character in id */
unsigned long err_cks; /* bad checksum */
unsigned long err_crl; /* expecting cr or lf, got something else */
char debug_input[NMEAP_MAX_SENTENCE_LENGTH + 1]; /* input line buffer for debug */
-
+
/** opaque user data */
void *user_data;
};
typedef struct nmeap_context nmeap_context_t;
-#endif /* __NMEAP_DEF_H__ */
+#endif /* __NMEAP_DEF_H__ */