/**CFile**************************************************************** FileName [demo.c] SystemName [ABC: Logic synthesis and verification system.] PackageName [ABC as a static library.] Synopsis [A demo program illustrating the use of ABC as a static library.] Author [Alan Mishchenko] Affiliation [UC Berkeley] Date [Ver. 1.0. Started - June 20, 2005.] Revision [$Id: demo.c,v 1.00 2005/11/14 00:00:00 alanmi Exp $] ***********************************************************************/ #include #include //////////////////////////////////////////////////////////////////////// /// DECLARATIONS /// //////////////////////////////////////////////////////////////////////// #if defined(ABC_NAMESPACE) namespace ABC_NAMESPACE { #elif defined(__cplusplus) extern "C" { #endif // procedures to start and stop the ABC framework // (should be called before and after the ABC procedures are called) void Abc_Start(); void Abc_Stop(); // procedures to get the ABC framework and execute commands in it typedef struct Abc_Frame_t_ Abc_Frame_t; Abc_Frame_t * Abc_FrameGetGlobalFrame(); int Cmd_CommandExecute( Abc_Frame_t * pAbc, const char * sCommand ); #if defined(ABC_NAMESPACE) } using namespace ABC_NAMESPACE; #elif defined(__cplusplus) } #endif //////////////////////////////////////////////////////////////////////// /// FUNCTION DEFINITIONS /// //////////////////////////////////////////////////////////////////////// /**Function************************************************************* Synopsis [The main() procedure.] Description [This procedure compiles into a stand-alone program for DAG-aware rewriting of the AIGs. A BLIF or PLA file to be considered for rewriting should be given as a command-line argument. Implementation of the rewriting is inspired by the paper: Per Bjesse, Arne Boralv, "DAG-aware circuit compression for formal verification", Proc. ICCAD 2004.] SideEffects [] SeeAlso [] ***********************************************************************/ int main( int argc, char * argv[] ) { // parameters int fUseResyn2 = 0; int fPrintStats = 1; int fVerify = 1; // variables Abc_Frame_t * pAbc; char * pFileName; char Command[1000]; clock_t clkRead, clkResyn, clkVer, clk; ////////////////////////////////////////////////////////////////////////// // get the input file name if ( argc != 2 ) { printf( "Wrong number of command-line arguments.\n" ); return 1; } pFileName = argv[1]; ////////////////////////////////////////////////////////////////////////// // start the ABC framework Abc_Start(); pAbc = Abc_FrameGetGlobalFrame(); clk = clock(); ////////////////////////////////////////////////////////////////////////// // read the file sprintf( Command, "read %s", pFileName ); if ( Cmd_CommandExecute( pAbc, Command ) ) { fprintf( stdout, "Cannot execute command \"%s\".\n", Command ); return 1; } ////////////////////////////////////////////////////////////////////////// // balance sprintf( Command, "balance" ); if ( Cmd_CommandExecute( pAbc, Command ) ) { fprintf( stdout, "Cannot execute command \"%s\".\n", Command ); return 1; } clkRead = clock() - clk; ////////////////////////////////////////////////////////////////////////// // print stats if ( fPrintStats ) { sprintf( Command, "print_stats" ); if ( Cmd_CommandExecute( pAbc, Command ) ) { fprintf( stdout, "Cannot execute command \"%s\".\n", Command ); return 1; } } clk = clock(); ///////////////////////////
// dear imgui: Platform Binding for OSX / Cocoa
// This needs to be used along with a Renderer (e.g. OpenGL2, OpenGL3, Vulkan, Metal..)
// [BETA] Beta bindings, not well tested. If you want a portable application, prefer using the Glfw or SDL platform bindings on Mac.

// Issues:
// [ ] Platform: Keys are all generally very broken. Best using [event keycode] and not [event characters]..
// [ ] Platform: Mouse cursor shapes and visibility are not supported (see end of https://github.com/glfw/glfw/issues/427)

@class NSEvent;
@class NSView;

IMGUI_API bool        ImGui_ImplOSX_Init();
IMGUI_API void        ImGui_ImplOSX_Shutdown();
IMGUI_API void        ImGui_ImplOSX_NewFrame(NSView *_Nonnull view);
IMGUI_API bool        ImGui_ImplOSX_HandleEvent(NSEvent *_Nonnull event, NSView *_Nullable view);