My random thoughts about remotes (aka target, connection, remote connection, launch target)
I thought about it when we were trying to re-write our target stuff few years ago (unsuccessfully)
and it just adds to our discussion that we had on the cdt call on Tuesday
We do need an object to represent where you launching your program. And this object
is strongly related to the object that represent platform you compile for, but they
are not the same. Problem is there is very blurry line between them.
Lets say we call specific device you launching on IDevice and connection to this device IConnection. Connection types can be lets say JTag, Serial and TCP/IP but they all lead
to the save IDevice. There maybe multiple of similar devices which are instances of IDeviceType.
Now how can truly know if multiple connections lead to the same device?
What if we load another OS on the same device, so one day it is os 1.0 and another day it it is 2.0,
is this the same? Or even better today it is linux and tomorrow it is qnx...
Is there hardware id on device?
And reverse: if we connect device to usb, and it creates TCP/IP connection with same IP address, but today it is one device, and tomorrow its different. Is it the same IDevice because it has same IConnection?
So we really need to know what is important and for what and not over-engineer this thing.