aboutsummaryrefslogtreecommitdiff
path: root/mavlink-library/src/main/scala/com/github
diff options
context:
space:
mode:
Diffstat (limited to 'mavlink-library/src/main/scala/com/github')
-rw-r--r--mavlink-library/src/main/scala/com/github/jodersky/mavlink/Generator.scala7
-rw-r--r--mavlink-library/src/main/scala/com/github/jodersky/mavlink/trees/package.scala1
2 files changed, 2 insertions, 6 deletions
diff --git a/mavlink-library/src/main/scala/com/github/jodersky/mavlink/Generator.scala b/mavlink-library/src/main/scala/com/github/jodersky/mavlink/Generator.scala
index 06a4909..3ee3492 100644
--- a/mavlink-library/src/main/scala/com/github/jodersky/mavlink/Generator.scala
+++ b/mavlink-library/src/main/scala/com/github/jodersky/mavlink/Generator.scala
@@ -14,12 +14,7 @@ import trees._
*/
class Generator(dialect: Dialect) {
- lazy val maxPayloadLength = {
- val widths = dialect.messages map { msg =>
- msg.fields.map(_.tpe.sizeof).sum
- }
- widths.max
- }
+ lazy val maxPayloadLength = dialect.messages.map(_.length).max
lazy val extraCrcs = Array.tabulate[Byte](255){i =>
val message = dialect.messages.find(_.id == i)
diff --git a/mavlink-library/src/main/scala/com/github/jodersky/mavlink/trees/package.scala b/mavlink-library/src/main/scala/com/github/jodersky/mavlink/trees/package.scala
index 49b697b..fc4b5f3 100644
--- a/mavlink-library/src/main/scala/com/github/jodersky/mavlink/trees/package.scala
+++ b/mavlink-library/src/main/scala/com/github/jodersky/mavlink/trees/package.scala
@@ -10,6 +10,7 @@ package trees {
case class Field(tpe: Type, nativeType: String, name: String, enum: Option[String], description: String) extends Tree
case class Message(id: Byte, name: String, description: String, fields: Seq[Field]) extends Tree {
def orderedFields = fields.toSeq.sortBy(_.tpe.width)(Ordering[Int].reverse)
+ def length = fields.map(_.tpe.sizeof).sum
lazy val checksum = {
var c = new Crc()