Kotlin – Constructor secundario de class con parámetro diferente

Al convertir una aplicación bastante simple de Java a Kotlin , encontré un "problema" que parece que no puedo solucionar.

Tengo una class ScanInfo que se parece a esto en Java (sin getters y setters)

 public class ScanInfo { private String source; private String label_type; private String data; public ScanInfo(Intent intent) { ... Get Info from intent and assign the values ... this.source = ... this.label_type = .... this.data = .... } } 

Ahora en Kotlin puedo crear la class

 class ScanInfo (var source: String, var label_type: String, var data: String) 

Pero no tengo idea de cómo hacer que funcione, así que puedo crear un object ScanInfo con Intent como parámetro. Intenté con compañero, object, object compañero, pero parece que no puedo encontrar la syntax correcta.

¿Me equivoco al search una solución así mientras uso Kotlin o simplemente no estoy usando el kotlin-constructor correcto? Si es posible, ¿cómo puedo crear un object ScanInfo con un Intento como parámetro?

 var result = ScanInfo(intent) 

Gracias por adelantado.