Hi Daniel, thanks for reaching us and for keeping touching the MAXON API.
First thing first: we do appreciate every single comment spent on this topic, even critical comments like yours, because in the end it means that the community is approaching to it and this is, any case, good!
Getting back to your question, considering that MAXON API is indeed young (yet powerful), it indeed should be used in conjuction with classic API in order to keep delivering plugins until the MAXON API will replace completely the old one.
With regard to your second point I do confirm that although NetwordAdapterInterface is just an interface which could be implemented by 3rd party developers for customized implementations, I'd like to point you to NetworkIpInterface which is a static interface to access network functionality.
In addition to this notes I also would like to point you to the Initialization section in our documentation where the
MAXON_INITIALIZATION is explained in all its glory and which, in this case where only MAXON API calls are used, can be handy.
Finally below the code I used to achieve the desired functionality
static maxon::Result<void> InitGlobalString()
// get all the adapters on the machine
maxon::BaseArray<maxon::NetworkAdapter> allNets = maxon::NetworkIpInterface::GetAllNetworkAdapters() iferr_return;
// browse all of them and print the MAC-address
for (const maxon::NetworkAdapter& adapter : allNets)
maxon::BaseArray<UChar> macadr = adapter.GetMacAddress() iferr_return;
ApplicationOutput("Adapter [@]: @", adapter.GetName(), maxon::NetworkIpInterface::MacAddressToString(macadr));
// called on system end
static void ClearGlobalString()
// do nothing
Last but not least, whislt I recommend you to have a look at the
microsdk example which represent the simpler yet fully working example of the MAXON API in use, I confirm that more examples are in the work and will for sure be part of a future SDK revision.