Module Values.CanSignalSource

Information about a single controller area network (CAN) signal and the messages it receives and transmits.

Sourcetype nonrec t = {
  1. messageId : NonNegativeInteger.t;
    (*

    The ID of the message.

    *)
  2. isBigEndian : PrimitiveBoolean.t;
    (*

    Whether the byte ordering of a CAN message is big-endian.

    *)
  3. isSigned : PrimitiveBoolean.t;
    (*

    Determines whether the message is signed (true) or not (false). If it's signed, the message can represent both positive and negative numbers. The isSigned parameter only applies to the INTEGER raw signal type, and it doesn't affect the FLOATING_POINT raw signal type.

    *)
  4. startBit : NonNegativeInteger.t;
    (*

    Indicates the beginning of the CAN signal. This should always be the least significant bit (LSB). This value might be different from the value in a DBC file. For little endian signals, startBit is the same value as in the DBC file. For big endian signals in a DBC file, the start bit is the most significant bit (MSB). You will have to calculate the LSB instead and pass it as the startBit.

    *)
  5. offset : Double.t;
    (*

    The offset used to calculate the signal value. Combined with factor, the calculation is value = raw_value * factor + offset.

    *)
  6. factor : Double.t;
    (*

    A multiplier used to decode the CAN message.

    *)
  7. length : NonNegativeInteger.t;
    (*

    How many bytes of data are in the message.

    *)
  8. name : CanSignalName.t option;
    (*

    The name of the signal.

    *)
  9. signalValueType : SignalValueType.t option;
    (*

    The value type of the signal. The default value is INTEGER.

    *)
}
Sourceval context_ : string
Sourceval make : ?name:??? -> ?signalValueType:??? -> messageId:NonNegativeInteger.t -> isBigEndian:PrimitiveBoolean.t -> isSigned:PrimitiveBoolean.t -> startBit:NonNegativeInteger.t -> offset:Double.t -> factor:Double.t -> length:NonNegativeInteger.t -> unit -> t
Sourceval to_value : t -> [> `Structure of (string * [> `Boolean of PrimitiveBoolean.t | `Double of Double.t | `Enum of string | `Integer of NonNegativeInteger.t | `String of CanSignalName.t ]) list ]
Sourceval to_query : t -> Awso.Client.Query.t
Sourceval of_xml : Awso.Xml.t -> t
Sourceval of_string : string -> t
Sourceval of_json : Yojson.Safe.t -> t
Sourceval to_json : t -> Yojson.Safe.t