#ifndef GPIB_PARSER_CHARS_H
#define GPIB_PARSER_CHARS_H
// Service characters definitions

// GPIB_CHAR_OPTIONALHEADER_SIGN, GPIB_CHAR_OPTIONALHEADER_ENDSIGN 
// the command header wrapped in these signs is an optional header
#define GPIB_CHAR_OPTIONALHEADER_SIGN         ('[')  
#define GPIB_CHAR_OPTIONALHEADER_ENDSIGN      (']')  

// GPIB_CHAR_SCPI_SUBSYS_SEPARATOR_SIGN: 
// the command header separator in SCPI
#define GPIB_CHAR_SCPI_SUBSYS_SEPARATOR_SIGN  (':')

// GPIB_CHAR_MANDATORY_IEEE488_SIGN: 
// the command header which begins from this sign is a header of 
// mandatory command
#define GPIB_CHAR_MANDATORY_IEEE488_SIGN      ('*')

// GPIB_CHAR_UNDERLINE_SIGN:
// Another valid charater for a GPIB command header
#define GPIB_CHAR_UNDERLINE_SIGN              ('_')

// GPIB_CHAR_REQUEST_SIGN:
// This charater in the end of the header body means the request command
#define GPIB_CHAR_REQUEST_SIGN                ('?')

// GPIB_CHAR_ENDLINE_SIGN:
// The end-of-line character
#define GPIB_CHAR_ENDLINE_SIGN                ('\n')

// GPIB_CHAR_WHITE_SIGN:
// The "white" character
#define GPIB_CHAR_WHITE_SIGN                  (' ')

// GPIB_CHAR_ARGSEPARATOR_SIGN:
// The argument separator character
#define GPIB_CHAR_ARGSEPARATOR_SIGN           (',')

// GPIB_CHAR_NUMSEPARATOR_SIGN:
// Numbers separator character in the list
#define GPIB_CHAR_NUMSEPARATOR_SIGN           (',')

// GPIB_CHAR_CMDSEPARATOR_SIGN:
// Commands separator character in the list
#define GPIB_CHAR_CMDSEPARATOR_SIGN           (';')

// GPIB_CHAR_RPLSEPARATOR_SIGN:
// Replies separator character
#define GPIB_CHAR_RPLSEPARATOR_SIGN           (';')

// GPIB_CHAR_NMBSYSTEM_SIGN:
// The numeric system prefix character
#define GPIB_CHAR_NMBSYSTEM_SIGN              ('#')

// GPIB_CHAR_DATATABLE_SIGN:
// The datatable prefix character
#define GPIB_CHAR_DATATABLE_SIGN              ('#')

// GPIB_CHAR_SINGLEQUOTE_SIGN:
// The single quote character
#define GPIB_CHAR_SINGLEQUOTE_SIGN            ('\'')

// GPIB_CHAR_DOUBLEQUOTE_SIGN:
// The double quote character
#define GPIB_CHAR_DOUBLEQUOTE_SIGN            ('\"')

#endif