cmDevCfg.h/c:Removed net cfg and added broadcast address and node label to audio cfg.

This commit is contained in:
kevin 2013-04-28 19:33:29 -07:00
parent 1b22f4a73a
commit 3838d0d888
2 changed files with 35 additions and 12 deletions

View File

@ -37,7 +37,7 @@ typedef struct cmDcmCfg_str
{ {
cmDcmMidi_t m; cmDcmMidi_t m;
cmDcmAudio_t a; cmDcmAudio_t a;
cmDcmNet_t n; //cmDcmNet_t n;
} u; } u;
struct cmDcmCfg_str* next; struct cmDcmCfg_str* next;
@ -128,6 +128,9 @@ void _cmDcmFreeAudio( cmDcmAudio_t* r )
{ {
cmMemFree(r->inDevLabelStr); cmMemFree(r->inDevLabelStr);
cmMemFree(r->outDevLabelStr); cmMemFree(r->outDevLabelStr);
cmMemFree((cmChar_t*)r->netNodeLabel);
cmMemFree((cmChar_t*)r->bcastAddr);
cmMemFree((cmChar_t*)r->ipAddr);
} }
void _cmDcmDuplAudio( cmDcmAudio_t* d, const cmDcmAudio_t* s ) void _cmDcmDuplAudio( cmDcmAudio_t* d, const cmDcmAudio_t* s )
@ -136,7 +139,7 @@ void _cmDcmDuplAudio( cmDcmAudio_t* d, const cmDcmAudio_t* s )
d->outDevLabelStr = cmMemAllocStr(s->outDevLabelStr); d->outDevLabelStr = cmMemAllocStr(s->outDevLabelStr);
d->rtSysArgs = s->rtSysArgs; d->rtSysArgs = s->rtSysArgs;
} }
/*
void _cmDcmFreeNet( cmDcmNet_t* r ) void _cmDcmFreeNet( cmDcmNet_t* r )
{ {
cmMemFree(r->sockAddr); cmMemFree(r->sockAddr);
@ -148,7 +151,7 @@ void _cmDcmDuplNet( cmDcmNet_t* d, const cmDcmNet_t* s )
d->portNumber = s->portNumber; d->portNumber = s->portNumber;
d->activeFl = s->activeFl; d->activeFl = s->activeFl;
} }
*/
void _cmDcmFreeCfg( cmDcm_t* p, cmDcmLoc_t* lp, cmDcmCfg_t* cp ) void _cmDcmFreeCfg( cmDcm_t* p, cmDcmLoc_t* lp, cmDcmCfg_t* cp )
{ {
@ -168,7 +171,7 @@ void _cmDcmFreeCfg( cmDcm_t* p, cmDcmLoc_t* lp, cmDcmCfg_t* cp )
{ {
case kMidiDcmTId: _cmDcmFreeMidi(&cp->u.m); break; case kMidiDcmTId: _cmDcmFreeMidi(&cp->u.m); break;
case kAudioDcmTId: _cmDcmFreeAudio(&cp->u.a); break; case kAudioDcmTId: _cmDcmFreeAudio(&cp->u.a); break;
case kNetDcmTId: _cmDcmFreeNet(&cp->u.n); break; //case kNetDcmTId: _cmDcmFreeNet(&cp->u.n); break;
default: default:
assert(0); assert(0);
break; break;
@ -711,6 +714,8 @@ cmDcRC_t cmDevCfgNameAudioPort(
unsigned dspFramesPerCycle, unsigned dspFramesPerCycle,
unsigned audioBufCnt, unsigned audioBufCnt,
double srate, double srate,
const cmChar_t* netNodeLabel,
const cmChar_t* bcastAddr,
const cmChar_t* ipAddr, const cmChar_t* ipAddr,
cmUdpPort_t ipPort, cmUdpPort_t ipPort,
bool activeFl ) bool activeFl )
@ -771,7 +776,9 @@ cmDcRC_t cmDevCfgNameAudioPort(
cp->u.a.rtSysArgs.dspFramesPerCycle = dspFramesPerCycle; cp->u.a.rtSysArgs.dspFramesPerCycle = dspFramesPerCycle;
cp->u.a.rtSysArgs.audioBufCnt = audioBufCnt; cp->u.a.rtSysArgs.audioBufCnt = audioBufCnt;
cp->u.a.rtSysArgs.srate = srate; cp->u.a.rtSysArgs.srate = srate;
cp->u.a.ipAddr = ipAddr; cp->u.a.netNodeLabel = netNodeLabel==NULL ? NULL : cmMemAllocStr(netNodeLabel);
cp->u.a.bcastAddr = bcastAddr ==NULL ? NULL : cmMemAllocStr(bcastAddr);
cp->u.a.ipAddr = ipAddr ==NULL ? NULL : cmMemAllocStr(ipAddr);
cp->u.a.ipPort = ipPort; cp->u.a.ipPort = ipPort;
cp->descStr = cmTsPrintfP(cp->descStr,"%sIn: Chs:%i %s\nOut: Chs:%i %s",activeFl?"":"INACTIVE ",inChCnt,cp->u.a.inDevLabelStr,outChCnt,cp->u.a.outDevLabelStr); cp->descStr = cmTsPrintfP(cp->descStr,"%sIn: Chs:%i %s\nOut: Chs:%i %s",activeFl?"":"INACTIVE ",inChCnt,cp->u.a.inDevLabelStr,outChCnt,cp->u.a.outDevLabelStr);
return kOkDcRC; return kOkDcRC;
@ -912,7 +919,7 @@ const cmDcmAudio_t* cmDevCfgAudioDevMap( cmDevCfgH_t h, unsigned usrAppId, un
return &mp->cfg->u.a; return &mp->cfg->u.a;
} }
/*
cmDcRC_t cmDevCfgNameNetPort( cmDcRC_t cmDevCfgNameNetPort(
cmDevCfgH_t h, cmDevCfgH_t h,
const cmChar_t* dcLabelStr, const cmChar_t* dcLabelStr,
@ -1005,6 +1012,7 @@ const cmDcmNet_t* cmDevCfgNetDevMap( cmDevCfgH_t h, unsigned usrAppId, unsign
return &mp->cfg->u.n; return &mp->cfg->u.n;
} }
*/
unsigned cmDevCfgLocCount( cmDevCfgH_t h ) unsigned cmDevCfgLocCount( cmDevCfgH_t h )
{ {
@ -1084,7 +1092,7 @@ cmDcRC_t cmDevCfgLocStore( cmDevCfgH_t h, const cmChar_t* locLabelStr )
{ {
case kMidiDcmTId: _cmDcmDuplMidi(&ncp->u.m,&ocp->u.m); break; case kMidiDcmTId: _cmDcmDuplMidi(&ncp->u.m,&ocp->u.m); break;
case kAudioDcmTId: _cmDcmDuplAudio(&ncp->u.a,&ocp->u.a); break; case kAudioDcmTId: _cmDcmDuplAudio(&ncp->u.a,&ocp->u.a); break;
case kNetDcmTId: _cmDcmDuplNet( &ncp->u.n,&ocp->u.n); break; //case kNetDcmTId: _cmDcmDuplNet( &ncp->u.n,&ocp->u.n); break;
default: default:
assert(0); assert(0);
break; break;
@ -1265,7 +1273,7 @@ cmDcRC_t _cmDevCfgRead( cmDcm_t* p, cmJsonH_t jsH, const cmJsonNode_t* rootObjPt
cmDcmMidi_t m; cmDcmMidi_t m;
cmDcmAudio_t a; cmDcmAudio_t a;
cmDcmNet_t n; //cmDcmNet_t n;
switch( typeId ) switch( typeId )
{ {
@ -1295,6 +1303,8 @@ cmDcRC_t _cmDevCfgRead( cmDcm_t* p, cmJsonH_t jsH, const cmJsonNode_t* rootObjPt
"dspFramesPerCycle", kIntTId, &a.rtSysArgs.dspFramesPerCycle, "dspFramesPerCycle", kIntTId, &a.rtSysArgs.dspFramesPerCycle,
"audioBufCnt", kIntTId, &a.rtSysArgs.audioBufCnt, "audioBufCnt", kIntTId, &a.rtSysArgs.audioBufCnt,
"srate", kRealTId, &a.rtSysArgs.srate, "srate", kRealTId, &a.rtSysArgs.srate,
"netNodeLabel", kStringTId, &a.netNodeLabel,
"bcastAddr", kStringTId, &a.bcastAddr,
"ipAddr", kStringTId, &a.ipAddr, "ipAddr", kStringTId, &a.ipAddr,
"ipPort", kIntTId, &a.ipPort, "ipPort", kIntTId, &a.ipPort,
"active", kBoolTId, &a.activeFl, "active", kBoolTId, &a.activeFl,
@ -1311,6 +1321,8 @@ cmDcRC_t _cmDevCfgRead( cmDcm_t* p, cmJsonH_t jsH, const cmJsonNode_t* rootObjPt
a.rtSysArgs.dspFramesPerCycle, a.rtSysArgs.dspFramesPerCycle,
a.rtSysArgs.audioBufCnt, a.rtSysArgs.audioBufCnt,
a.rtSysArgs.srate, a.rtSysArgs.srate,
a.netNodeLabel,
a.bcastAddr,
a.ipAddr, a.ipAddr,
a.ipPort, a.ipPort,
a.activeFl)) != kOkDcRC ) a.activeFl)) != kOkDcRC )
@ -1319,7 +1331,7 @@ cmDcRC_t _cmDevCfgRead( cmDcm_t* p, cmJsonH_t jsH, const cmJsonNode_t* rootObjPt
} }
break; break;
/*
case kNetDcmTId: case kNetDcmTId:
if( cmJsonMemberValues( cfgObjNp, &errLabelPtr, if( cmJsonMemberValues( cfgObjNp, &errLabelPtr,
"sockAddr", kStringTId, &n.sockAddr, "sockAddr", kStringTId, &n.sockAddr,
@ -1335,6 +1347,7 @@ cmDcRC_t _cmDevCfgRead( cmDcm_t* p, cmJsonH_t jsH, const cmJsonNode_t* rootObjPt
goto errLabel; goto errLabel;
break; break;
*/
default: default:
assert(0); assert(0);
@ -1430,12 +1443,15 @@ cmDcRC_t _cmDevCfgWrite( cmDcm_t* p, cmJsonH_t jsH, cmJsonNode_t* rootObjPtr )
"dspFramesPerCycle", kIntTId, cp->u.a.rtSysArgs.dspFramesPerCycle, "dspFramesPerCycle", kIntTId, cp->u.a.rtSysArgs.dspFramesPerCycle,
"audioBufCnt", kIntTId, cp->u.a.rtSysArgs.audioBufCnt, "audioBufCnt", kIntTId, cp->u.a.rtSysArgs.audioBufCnt,
"srate", kRealTId, cp->u.a.rtSysArgs.srate, "srate", kRealTId, cp->u.a.rtSysArgs.srate,
"netNodeLabel", kStringTId, cp->u.a.netNodeLabel,
"bcastAddr", kStringTId, cp->u.a.bcastAddr,
"ipAddr", kStringTId, cp->u.a.ipAddr, "ipAddr", kStringTId, cp->u.a.ipAddr,
"ipPort", kIntTId, cp->u.a.ipPort, "ipPort", kIntTId, cp->u.a.ipPort,
"active", kBoolTId, cp->u.a.activeFl, "active", kBoolTId, cp->u.a.activeFl,
NULL ); NULL );
break; break;
/*
case kNetDcmTId: case kNetDcmTId:
cmJsonInsertPairs(jsH, cfgObjNp, cmJsonInsertPairs(jsH, cfgObjNp,
"sockAddr", kStringTId, cp->u.n.sockAddr, "sockAddr", kStringTId, cp->u.n.sockAddr,
@ -1443,7 +1459,7 @@ cmDcRC_t _cmDevCfgWrite( cmDcm_t* p, cmJsonH_t jsH, cmJsonNode_t* rootObjPtr )
"activeFl", kBoolTId, cp->u.n.activeFl, "activeFl", kBoolTId, cp->u.n.activeFl,
NULL ); NULL );
break; break;
*/
default: default:
assert(0); assert(0);
break; break;

View File

@ -59,7 +59,7 @@ extern "C" {
kInvalidDcmTId, // kInvalidDcmTId must be zero kInvalidDcmTId, // kInvalidDcmTId must be zero
kMidiDcmTId, kMidiDcmTId,
kAudioDcmTId, kAudioDcmTId,
kNetDcmTId //kNetDcmTId
} cmTypeDcmId_t; } cmTypeDcmId_t;
typedef cmRC_t cmDcRC_t; typedef cmRC_t cmDcRC_t;
@ -81,11 +81,14 @@ extern "C" {
cmChar_t* inDevLabelStr; // Input audio device label. cmChar_t* inDevLabelStr; // Input audio device label.
cmChar_t* outDevLabelStr; // Output audio device label. cmChar_t* outDevLabelStr; // Output audio device label.
cmRtSysArgs_t rtSysArgs; // RT system cfg recd cmRtSysArgs_t rtSysArgs; // RT system cfg recd
const cmChar_t* netNodeLabel;
const cmChar_t* bcastAddr; // network broadcast address
const cmChar_t* ipAddr; // local network addr or NULL for localhost const cmChar_t* ipAddr; // local network addr or NULL for localhost
cmUdpPort_t ipPort; // local network port cmUdpPort_t ipPort; // local network port
bool activeFl; bool activeFl;
} cmDcmAudio_t; } cmDcmAudio_t;
/*
typedef struct typedef struct
{ {
const cmChar_t* label; // cfg label const cmChar_t* label; // cfg label
@ -93,6 +96,7 @@ extern "C" {
unsigned portNumber; // socket port number unsigned portNumber; // socket port number
bool activeFl; // this port is active/inactive bool activeFl; // this port is active/inactive
} cmDcmNet_t; } cmDcmNet_t;
*/
extern cmDevCfgH_t cmDevCfgNullHandle; extern cmDevCfgH_t cmDevCfgNullHandle;
@ -148,6 +152,8 @@ extern "C" {
unsigned dspFramesPerCycle, unsigned dspFramesPerCycle,
unsigned audioBufCnt, unsigned audioBufCnt,
double srate, double srate,
const cmChar_t* netNodeLabel,
const cmChar_t* bcastAddr,
const cmChar_t* ipAddr, const cmChar_t* ipAddr,
cmUdpPort_t ipPort, cmUdpPort_t ipPort,
bool activeFl ); bool activeFl );
@ -163,7 +169,7 @@ extern "C" {
const struct cmRtSysArgs_str* cmDevCfgRtSysArgs( cmDevCfgH_t h, unsigned usrAppId, unsigned usrMapId ); const struct cmRtSysArgs_str* cmDevCfgRtSysArgs( cmDevCfgH_t h, unsigned usrAppId, unsigned usrMapId );
/*
cmDcRC_t cmDevCfgNameNetPort( cmDcRC_t cmDevCfgNameNetPort(
cmDevCfgH_t h, cmDevCfgH_t h,
const cmChar_t* dcLabelStr, const cmChar_t* dcLabelStr,
@ -176,6 +182,7 @@ extern "C" {
const cmDcmNet_t* cmDevCfgNetCfg( cmDevCfgH_t h, unsigned cfgIdx ); const cmDcmNet_t* cmDevCfgNetCfg( cmDevCfgH_t h, unsigned cfgIdx );
const cmDcmNet_t* cmDevCfgNetMap( cmDevCfgH_t h, unsigned usrAppId, unsigned usrMapId ); const cmDcmNet_t* cmDevCfgNetMap( cmDevCfgH_t h, unsigned usrAppId, unsigned usrMapId );
*/
//--------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------
// Location Management Functions: // Location Management Functions: