Void RtCfg_init() { Engine_addStubFxns("AUDDEC_STUBS", &AUDDEC_STUBS); Engine_addStubFxns("AUDENC_STUBS", &AUDENC_STUBS); Engine_addStubFxns("AUDDEC1_STUBS", &AUDDEC1_STUBS); Engine_addStubFxns("AUDENC1_STUBS", &AUDENC1_STUBS); Engine_addStubFxns("IMGDEC_STUBS", &IMGDEC_STUBS); Engine_addStubFxns("IMGENC_STUBS", &IMGENC_STUBS); Engine_addStubFxns("IMGDEC1_STUBS", &IMGDEC1_STUBS); Engine_addStubFxns("IMGENC1_STUBS", &IMGENC1_STUBS); Engine_addStubFxns("SPHDEC_STUBS", &SPHDEC_STUBS); Engine_addStubFxns("SPHENC_STUBS", &SPHENC_STUBS); Engine_addStubFxns("SPHDEC1_STUBS", &SPHDEC1_STUBS); Engine_addStubFxns("SPHENC1_STUBS", &SPHENC1_STUBS); Engine_addStubFxns("VIDDEC_STUBS", &VIDDEC_STUBS); Engine_addStubFxns("VIDENC_STUBS", &VIDENC_STUBS); Engine_addStubFxns("VIDDEC1_STUBS", &VIDDEC1_STUBS); Engine_addStubFxns("VIDENC1_STUBS", &VIDENC1_STUBS); Engine_addStubFxns("VIDDEC2_STUBS", &VIDDEC2_STUBS); Engine_addStubFxns("VIDDEC2FRONT_STUBS", &VIDDEC2FRONT_STUBS); Engine_addStubFxns("VIDDEC2BACK_STUBS", &VIDDEC2BACK_STUBS); Engine_addStubFxns("VIDTRANSCODE_STUBS", &VIDTRANSCODE_STUBS); Engine_addStubFxns("VIDANALYTICS_STUBS", &VIDANALYTICS_STUBS); Engine_addStubFxns("UNIVERSAL_STUBS", &UNIVERSAL_STUBS); Engine_addStubFxns("VIDENC2_STUBS", &VIDENC2_STUBS); Engine_addStubFxns("VIDDEC3_STUBS", &VIDDEC3_STUBS); }
/* * ======== main ======== */ Int main(Int argc, String argv[]) { String procId; String procSuffix; String engineName; String mapFileName = NULL; String inFile; String outFile; Char defaultEngineName[32]; Bool useExtLoader = FALSE; /* Set to TRUE if using external loader */ String options = "e:m:p:s:"; Int option; char serverName[MAXSERVERNAMELEN]; Engine_Error retVal; Engine_Desc engDesc; /* Initialize defaults. */ procId = "DSP"; procSuffix = "x64P"; engineName = defaultEngineName; sprintf(defaultEngineName, "remote_copy_%s", procId); inFile = "./in.dat"; outFile = "./out.dat"; while ((option = getopt(argc, argv, options)) != -1) { switch (option) { case 'e': engineName = optarg; break; case 'm': /* * If specifying the slave's memory mapping, then assume that * Codec Engine will be loading the slave. */ mapFileName = optarg; useExtLoader = FALSE; break; case 'p': procId = optarg; sprintf(defaultEngineName, "remote_copy_%s", procId); break; case 's': procSuffix = optarg; break; default: Log_print1(Diags_USER7, " unrecognized option '%c'\n", option); break; } } if (argc == (optind + 1)) { inFile = argv[optind]; } else if (argc == (optind + 2)) { inFile = argv[optind]; outFile = argv[optind + 1]; } else if (argc != optind) { fprintf(stderr, usage, argv[0]); exit(1); } /* init Codec Engine */ CERuntime_init(); /* Enable all trace for xdc.runtime.Main */ Diags_setMask("xdc.runtime.Main+EX1234567"); Log_print0(Diags_USER2, "main> ti.sdo.ce.examples.apps.universal_copy"); /* * Create the Engine with a remote Server and add register the * appropriate stub functions. * * Note, this can also be done in a config script. */ retVal = Engine_addStubFxns("UNIVERSAL_STUBS", (IALG_Fxns *)&UNIVERSAL_STUBS); if (retVal != Engine_EOK) { printf("App-> ERROR: Runtime Engine_addStubFxns() failed (0x%x)\n", retVal); /* don't continue */ while (1) {} } Engine_initDesc(&engDesc); engDesc.name = engineName; engDesc.memMap = mapFileName; engDesc.useExtLoader = useExtLoader; sprintf(serverName, "all_%s.%s", procId, procSuffix); engDesc.remoteName = serverName; retVal = Engine_add(&engDesc); if (retVal != Engine_EOK) { Log_print1(Diags_ERROR, "main-> ERROR: Runtime Engine_add() " "failed (0x%x)\n", retVal); /* don't continue */ while (1) {} } return (smain(argv[0], procId, engineName, inFile, outFile)); }