/** @file
  Header file for PCCT parser

  Copyright (c) 2020, Arm Limited.
  SPDX-License-Identifier: BSD-2-Clause-Patent
**/

#pragma once

/**
  Minimum value for the 'length' field in subspaces of types 0, 1 and 2.
*/
#define MIN_MEMORY_RANGE_LENGTH  8

/**
  Minimum value for the 'length' field in subspaces of types 3 and 4.
*/
#define MIN_EXT_PCC_SUBSPACE_MEM_RANGE_LEN  16

/**
  Maximum number of PCC subspaces.
*/
#define MAX_PCC_SUBSPACES  256

/**
  Parser for the header of any type of PCC subspace.
*/
#define PCC_SUBSPACE_HEADER()                                             \
  {L"Type", 1, 0, L"0x%x", NULL, (VOID**)&PccSubspaceType, NULL, NULL},   \
  {L"Length", 1, 1, L"%u", NULL, (VOID**)&PccSubspaceLength, NULL, NULL}
