chromium/third_party/ipcz/src/ipcz/message_macros/message_base_declaration_macros.h

// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// no-include-guard-because-multiply-included

// This header is used to emit a Foo_Base class declaration for each message
// Foo. The main purpose of Foo_Base is to define the list of version metadata
// for the Foo message, and to act as a base class for the generated Foo class
// (see message_declaration_macros.h) so that class can introspect its own
// version metadata. The version metadata cannot be defined by macros in that
// header, because that header already needs to emit accessor methods for each
// version.

#define IPCZ_MSG_BEGIN_INTERFACE
#define IPCZ_MSG_END_INTERFACE
#define IPCZ_MSG_ID

#define IPCZ_MSG_BEGIN
#define IPCZ_MSG_END

#define IPCZ_MSG_BEGIN_VERSION

#define IPCZ_MSG_END_VERSION
#define IPCZ_MSG_PARAM
#define IPCZ_MSG_PARAM_ARRAY
#define IPCZ_MSG_PARAM_DRIVER_OBJECT
#define IPCZ_MSG_PARAM_DRIVER_OBJECT_ARRAY