syntax = "proto3";
package pulse.cdm.bind;
option java_package = "com.kitware.pulse.cdm.bind";
option csharp_namespace = "pulse.cdm.bind";
option optimize_for = SPEED;

import "pulse/cdm/bind/Enums.proto";
import "pulse/cdm/bind/Properties.proto";
import "pulse/cdm/bind/Substance.proto";

message BagValveMaskData
{
  eBreathState                        BreathState                        = 1; /**<< @brief @ref eBreathStateTable */
  eSwitch                             Connection                         = 2; /**<< @brief @ref BagValveMaskData_eConnectionTable */

  ScalarPressureTimePerVolumeData     BagResistance                      = 3; /**<< @brief Bag resistance. */
  ScalarVolumeData                    ConnectionVolume                   = 4; /**<< @brief Dead space volume of the connection (i.e., mask/tube). */
  ScalarPressureTimePerVolumeData     FilterResistance                   = 5; /**<< @brief Filter resistance. */
  ScalarVolumeData                    FilterVolume                       = 6; /**<< @brief Dead space volume of the filter. */
  ScalarPressureTimePerVolumeData     SealResistance                     = 7; /**<< @brief Seal resistance. */
  ScalarPressureData                  ValvePositiveEndExpiratoryPressure = 8; /**<< @brief Maximum extrinsic pressure above atmosphere at the end of exhalation. */
  ScalarPressureTimePerVolumeData     ValveResistance                    = 9; /**<< @brief Valve Resistance. */
  ScalarVolumeData                    ValveVolume                        = 10;/**<< @brief Dead space volume of the valve. */

  repeated SubstanceFractionData      FractionInspiredGas                = 11;/**<< @brief Break down of the gases, such as FiO2. */
  repeated SubstanceConcentrationData ConcentrationInspiredAerosol       = 12;/**<< @brief Concentration of added aerosolized substances. */
}
