co_architecture co_initialize(void *arg);
This function, which must be defined as part of every Impulse C application, initializes the application for the purpose of desktop simulation. The co_initialize function also defines the relationship between your application's main function and its configuration function. Finally, co_initialize provides a defined starting point for hardware/software compilation using the Impulse C compiler tools.
The argument for co_initialize is application-specific. The value of the argument, if it can be determined at compile time, is cast to an integer and substituted for the co_param parameter of every hardware process. In software processes and desktop simulation, arguments of type co_param are treated normally (that is, they may be used like a void *).
A pointer to the architecture pointer returned from the function co_architecture_create.
The co_initialize function is not a predefined Impulse C function. Instead, you define this function in your Impulse C application. The co_initialize function must include at least one call to co_architecture_create and must be called from main.