add SetOutput interface