а поскольку таки объектов в куске кода может быть много вместо простого ретурна имеет смысл сделать goto на секцию которая вызывает вторую пару для этих функций
про outMachinery - ошибаешься у них только хедеры - чистые сишные интерфейсы. они писали в блоге, почему так. могу или ссылку скинуть или в двух словах рассказать