void TType::computeDeepestStructNesting() { if (!getStruct()) { return; } int maxNesting = 0; for (TTypeList::const_iterator tl = getStruct()->begin(); tl != getStruct()->end(); ++tl) { maxNesting = std::max(maxNesting, ((*tl).type)->getDeepestStructNesting()); } deepestStructNesting = 1 + maxNesting; }
int TType::getStructSize() const { if (!getStruct()) { assert(false && "Not a struct"); return 0; } if (structureSize == 0) for (TTypeList::iterator tl = getStruct()->begin(); tl != getStruct()->end(); tl++) structureSize += ((*tl).type)->getObjectSize(); return structureSize; }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_test (JNIEnv *env, jobject obj) { printf("Hello NIScope\n"); fflush(stdout); ViSession vi = getStruct(env, obj)->viSession; ViStatus error = VI_SUCCESS; ViChar errorSource[MAX_FUNCTION_NAME_SIZE]; ViChar errorMessage[MAX_ERROR_DESCRIPTION] = " "; ViRsrc resourceName = "PXI1Slot4"; ViConstString channelName = "0,1"; // printf("Actual record length: %d\n", actualRecordLength); // printf("Actual sample rate: %.2f\n", actualSampleRate); // printf("wfmInfo.actualSamples %d\n", wfmInfoPtr[0].actualSamples); // int i; // for (i = 0; i < wfmInfoPtr->actualSamples; i++) { // printf("%f, ", waveformPtr[i]); // } // printf("\n"); // for (i = wfmInfoPtr->actualSamples; i < wfmInfoPtr->actualSamples * 2; i++) { // printf("%f, ", waveformPtr[i]); // } // printf("\n"); Error: // if (wfmInfoPtr) // free(wfmInfoPtr); // if (waveformPtr) // free(waveformPtr); // Display messages if (error != VI_SUCCESS) { printf("%s\n", errorSource); niScope_errorHandler(getStruct(env, obj)->viSession, error, errorSource, errorMessage); // Intrepret the error } else { strcpy(errorMessage, "Acquisition successful!"); } printf("Error %x: %s\n", error, errorMessage); fflush(stdout); // Close the session if (getStruct(env, obj)->viSession) niScope_close(getStruct(env, obj)->viSession); return; }
clientADT connectToServer(serverADT server) { struct sockaddr_un * addr_cli2; clientADT client; if( (client = malloc(sizeof(struct clientCDT))) == NULL) return NULL; down(server->semid, SEM_CLI_TABLE); addr_cli2 = getStruct(getpid()); if ( (client->sockfd = socket(AF_UNIX, SOCK_DGRAM,0) ) == -1) { perror("Socket call failed"); return NULL; } if ( bind(client->sockfd,(struct sockaddr *)addr_cli2, SIZE) ){ perror("Son: bind call failed"); return NULL; } public_sockfd = client->sockfd; client->data = *addr_cli2; if (up(server->semid, SEM_CLI_TABLE, TRUE) == -1) return NULL; return client; }
JNIEXPORT jdouble JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_fetchMeasurement (JNIEnv *env, jobject obj, jstring channelList, jdouble timeout, jint scalarMeasFunction){ ViReal64 result; handleErrOverride(niScope_FetchMeasurement(getStruct(env, obj)->viSession,toChars(env, channelList),timeout,scalarMeasFunction,&result)); return result; }
void StructModel::genCode(CodeGenContext* context) { std::vector<LValue> type_vec; for (auto& s : type_list) { LValue t = context->FindType(s); type_vec.push_back(t); } struct_type = context->getLLCG()->Struct(getStruct(context), type_vec); }
int main() { A* p = NULL; getStruct(&p); if (p) { printf("%d\n", p->a); } return 0; }
int GFFFile::init(int n) { if(!reading()) return errcode = 6; if(n == -1) n = initstages; if((n > 0) && !inited[0] && readHeader()) return errcode; if((n > 1) && !inited[1] && readLabels()) return errcode; if((n > 2) && !inited[2] && getStruct(0, topstruct)) return errcode; return errcode = 0; }
int main() { uint64_t ret = getUint64(); printf("ret == %llu\n", ret); Node a; a = getStruct(); printf("a.v == %d\n", a.v); return 0; }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_fetchBinary32 (JNIEnv *env, jobject obj, jstring channelList, jdouble timeout, jint numSamples, jintArray jwfm, jobjectArray jwfmInfo){ ViInt32 wfm[env->GetArrayLength(jwfm)]; niScope_wfmInfo wfmInfo[env->GetArrayLength(jwfmInfo)]; handleErrOverride(niScope_FetchBinary32(getStruct(env, obj)->viSession, toChars(env, channelList), timeout, numSamples, wfm, wfmInfo)); env->SetIntArrayRegion(jwfm, 0, env->GetArrayLength(jwfm), (const jint*) wfm); for (int i = 0; i < env->GetArrayLength(jwfmInfo); i++) { env->SetObjectArrayElement(jwfmInfo, i, wfmInfoTrans(env, obj, &wfmInfo[i])); } }
JNIEXPORT jint JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_getFrequencyResponse (JNIEnv *env, jobject obj, jstring channelName, jint bufferSize, jdoubleArray jfrequencies, jdoubleArray jamplitudes, jdoubleArray jphases) { ViReal64 frequencies[env->GetArrayLength(jfrequencies)]; env->GetDoubleArrayRegion(jfrequencies, 0, env->GetArrayLength(jfrequencies), (jdouble*) frequencies); ViReal64 amplitudes[env->GetArrayLength(jamplitudes)]; env->GetDoubleArrayRegion(jamplitudes, 0, env->GetArrayLength(jamplitudes), (jdouble*) amplitudes); ViReal64 phases[env->GetArrayLength(jphases)]; env->GetDoubleArrayRegion(jphases, 0, env->GetArrayLength(jphases), (jdouble*) phases); ViInt32 numberOfFrequencies; handleErrOverride(niScope_GetFrequencyResponse(getStruct(env, obj)->viSession, toChars(env, channelName), bufferSize, frequencies, amplitudes, phases, &numberOfFrequencies)); return numberOfFrequencies; }
clientADT getClient(serverADT server, pid_t id) { struct sockaddr_un * addr; clientADT client = malloc(sizeof(struct clientCDT)); if (client == NULL) return NULL; addr = getStruct(id); client->sockfd = public_sockfd; client->data = *addr; return client; }
int GFFFile::getList(uint32 n, Struct &sct, std::vector<Struct> &structs) { uint32 count, entry, pos; if(prepareGet(n, sct, NWN_VAR_LIST, offlistidx)) return errcode; if(binRead(count)) return errcode; structs.reserve(count); for(uint32 i=0;i<count;i++) { Struct sct; if(binRead(entry)) return errcode; pos = tell(); getStruct(entry, sct); if(seek(pos)) return errcode; structs.push_back(sct); } return errcode = 0; }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureHorizontalTiming (JNIEnv *env, jobject obj, jdouble minSampleRate, jint minNumPts, jdouble refPosition, jint numRecords, jboolean enforceRealtime) { handleErrOverride(niScope_ConfigureHorizontalTiming(getStruct(env, obj)->viSession, minSampleRate, minNumPts, refPosition, numRecords, enforceRealtime)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureChanCharacteristics (JNIEnv *env, jobject obj, jstring channelList, jdouble inputImpedance, jdouble maxInputFrequency) { handleErrOverride(niScope_ConfigureChanCharacteristics(getStruct(env, obj)->viSession, toChars(env, channelList), inputImpedance, maxInputFrequency)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureVertical (JNIEnv *env, jobject obj, jstring channelList, jdouble range, jdouble offset, jint coupling, jdouble probeAttenuation, jboolean enabled) { handleErrOverride(niScope_ConfigureVertical(getStruct(env, obj)->viSession, toChars(env, channelList), range, offset, coupling, probeAttenuation, enabled)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_autoSetup (JNIEnv *env, jobject obj) { handleErrOverride(niScope_AutoSetup(getStruct(env, obj)->viSession)); }
JNIEXPORT jfloat JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_calGetFREeprom (JNIEnv *env, jobject obj, jint numCoefficients){ ViReal32 polynomialFitCoefficients; handleErrOverride(niScope_CalGetFREeprom(getStruct(env, obj)->viSession,numCoefficients,&polynomialFitCoefficients)); return polynomialFitCoefficients; }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_sendSoftwareTriggerEdge (JNIEnv *env, jobject obj, jint whichTrigger) { handleErrOverride(niScope_SendSoftwareTriggerEdge(getStruct(env, obj)->viSession, whichTrigger)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureTriggerWindow (JNIEnv *env, jobject obj, jstring triggerSource, jdouble lowLevel, jdouble highLevel, jint windowMode, jint triggerCoupling, jdouble holdoff, jdouble delay) { handleErrOverride(niScope_ConfigureTriggerWindow(getStruct(env, obj)->viSession, toChars(env, triggerSource), lowLevel, highLevel, windowMode, triggerCoupling, holdoff, delay)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_adjustSampleClockRelativeDelay (JNIEnv *env, jobject obj, jdouble delay) { handleErrOverride(niScope_AdjustSampleClockRelativeDelay(getStruct(env, obj)->viSession, delay)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureClock (JNIEnv *env, jobject obj, jstring inputClockSource, jstring outputClockSource, jstring clockSyncPulseSource, jboolean masterEnabled) { handleErrOverride(niScope_ConfigureClock(getStruct(env, obj)->viSession, toChars(env, inputClockSource), toChars(env, outputClockSource), toChars(env, clockSyncPulseSource), masterEnabled)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_exportSignal (JNIEnv *env, jobject obj, jint signal, jstring signalIdentifier, jstring outputTerminal) { handleErrOverride(niScope_ExportSignal(getStruct(env, obj)->viSession, signal, toChars(env, signalIdentifier), toChars(env, outputTerminal))); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_close (JNIEnv *env, jobject obj) { niScope_close(getStruct(env, obj)->viSession); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureTriggerHysteresis (JNIEnv *env, jobject obj, jstring triggerSource, jdouble level, jdouble hysteresis, jint slope, jint triggerCoupling, jdouble holdoff, jdouble delay) { handleErrOverride(niScope_ConfigureTriggerHysteresis(getStruct(env, obj)->viSession, toChars(env, triggerSource), level, hysteresis, slope, triggerCoupling, holdoff, delay)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_calSetSerialDACVoltageEeprom (JNIEnv *env, jobject obj, jfloat serialDACVolts){ handleErrOverride(niScope_CalSetSerialDACVoltageEeprom(getStruct(env, obj)->viSession,serialDACVolts)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureTriggerSoftware (JNIEnv *env, jobject obj, jdouble holdoff, jdouble delay) { handleErrOverride(niScope_ConfigureTriggerSoftware(getStruct(env, obj)->viSession, holdoff, delay)); }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_calSetADCVoltageEeprom (JNIEnv *env, jobject obj, jfloat adcVoltageGain, jfloat adcVoltageOffset){ handleErrOverride(niScope_CalSetADCVoltageEeprom(getStruct(env, obj)->viSession,adcVoltageGain,adcVoltageOffset)) ; }
JNIEXPORT void JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_configureTriggerImmediate (JNIEnv *env, jobject obj) { handleErrOverride(niScope_ConfigureTriggerImmediate(getStruct(env, obj)->viSession)); }
JNIEXPORT jfloat JNICALL Java_tw_edu_sju_ee_eea_jni_scope_NIScope_calGetSerialDACVoltageEeprom (JNIEnv *env, jobject obj){ ViReal32 serialDACVolts; handleErrOverride(niScope_CalGetSerialDACVoltageEeprom(getStruct(env, obj)->viSession,&serialDACVolts)); return serialDACVolts; }