GLXPlatformContext::GLXPlatformContext() { mInitialized = false; mDisplay = 0; mVisual = 0; createSignal("WindowResized"); createSignal("WindowClosed"); }
// signal activation setup VRSignal* VRDevice::addSignal(int key) { BStates[key] = false; // activation signal VRSignal* sigA = createSignal(key, 1); sigA->setUpdate(true); // deactivation signal VRSignal* sigB = createSignal(key, 0); sigB->add( new VRDevCb("Device_remUpdate", boost::bind(&VRDevice::remUpdateSignal, this, sigA, _1)) ); return sigA; }
// signal activation setup VRSignalPtr VRDevice::addToggleSignal(int key) { BStates[key] = false; // activation signal VRSignalPtr sigA = createSignal(key, 1); sigA->setUpdate(true); // deactivation signal VRSignalPtr sigB = createSignal(key, 0); auto fkt = VRFunction<VRDevice*>::create("Device_remUpdate", boost::bind(&VRDevice::remUpdateSignal, this, sigA, _1)); sigB->add( fkt ); deactivationCallbacks[sigA.get()] = fkt; return sigA; }
FPSCamera::FPSCamera() :Object(),mPitch(0) { createSlot("look",this,&FPSCamera::look); EventHandler::getDestination("OISSubsystem")->getSignal("mouseMoved") ->addListener(getSlot("look")); createSignal("moved"); mOgre = Engine::getPtr()->getSubsystem("OgreSubsystem")->castType<OgreSubsystem>(); mOIS = Engine::getPtr()->getSubsystem("OISSubsystem")->castType<OISSubsystem>(); mCamera = mOgre->createCamera(); mCamera->setFarClip(1000.f); mCamera->setNearClip(0.1f); mOgre->setActiveCamera(mCamera); mRollNode = mOgre->createSceneNode(); mYawNode = mOgre->createSceneNode(); mPitchNode = mOgre->createSceneNode(); mPosNode = mOgre->createSceneNode(); mOriNode = mOgre->createSceneNode(); mOgre->getRootSceneNode()->addChild(mPosNode); mPosNode->addChild(mOriNode); mOriNode->addChild(mYawNode); mYawNode->addChild(mPitchNode); mPitchNode->addChild(mRollNode); mRollNode->addChild(mCamera); mCamera->setFOV(75.f); }
void test_signal3() { #ifdef DBUSTL_CXX0X emitSignal("TestSignal3", "Signal 3 value", dbustl::Interface("com.example.AlternateInterface")); #else dbustl::Message signal = createSignal("TestSignal3", "com.example.AlternateInterface"); signal << "Signal 3 value"; emitSignal(signal); #endif };
void test_signal() { #ifdef DBUSTL_CXX0X emitSignal("TestSignal", "Signal 1 value"); #else dbustl::Message signal = createSignal("TestSignal"); signal << "Signal 1 value"; emitSignal(signal); #endif };
Batch::Batch(Oyster::Batch* b) :GUIElement(0),mOysterBatch(b),mWidth(b->getWidth()),mHeight(b->getHeight()) { createSignal("update"); createSignal("clickUp"); createSignal("mouseMoved"); mHovered = 0; mClicked = 0; mBatch = this; mCursor = 0;//new Empty(this, 9001);// the layer is OVER NINE THOUSAND (aka, it's always on top) //addChild(mCursor); createSlot("mouseMoved", this, &Batch::mouseMoved); createSlot("mouseUp", this, &Batch::mouseUp); createSlot("mouseDown", this, &Batch::mouseDown); createSlot("keyUp", this, &Batch::keyUp); createSlot("keyDown", this, &Batch::keyDown); createSlot("charUp", this, &Batch::charUp); createSlot("charDown", this, &Batch::charDown); }
int main(int argc, char* argv[]) { Signal* signals = NULL; unsigned int nsignals = 0; const char* vcd_file = argv[1]; char* name; char id; // Read VCD file FILE* fp; char* line = NULL; ssize_t len = 0; char* token = NULL; char* signalName = NULL; char signalId; if((fp = fopen(vcd_file, "r")) == NULL) { fprintf(stderr, "Failed to open VCD file: %s\n", vcd_file); exit(1); } unsigned char dumpVarsStarted = 0, dumpVarsEnded = 0; unsigned int timestamp = 0; while (getline(&line, &len, fp) != -1) { // Removing trailing line break if (line[strlen(line)-1] == '\n') { line[strlen(line)-1] = '\0'; } // Signal declaration line if (startsWith("$var", line)) { // Ignore the first 3 parts of string. // Signal symbol is in the 4o part. // Signal name is in the 5o part. strtok(line, " "); strtok(NULL, " "); strtok(NULL, " "); token = strtok(NULL, " "); signalName = strtok(NULL, " "); signalId = token[0]; createSignal(&signals, &nsignals, signalName, signalId); } else if (startsWith("$dumpvars", line)) { dumpVarsStarted = 1; } else if (startsWith("$end", line) && dumpVarsStarted) { dumpVarsEnded = 1; } else if (dumpVarsEnded) { if (line[0] == '#') { // Timestamp update char timestampStr[16]; strcpy(timestampStr, line+1); timestamp = atoi(timestampStr); } else { // Signal value update unsigned char value = line[0] - 0x30; char symbol = line[strlen(line)-1]; Signal* signal = findSignalBySymbol(signals, nsignals, symbol); assignSignalUpdate(signal, value, timestamp); } } } // close all signals counters unsigned int i; for (i = 0; i < nsignals; i++) { closeSignalCounters(&signals[i], timestamp); } printf("--- REPORT ---\n"); Signal *sigShortDelay = NULL, *sigLongDelay = NULL; for(i = 0; i < nsignals; i++) { printSignal(&signals[i]); if (sigShortDelay == NULL || signals[i].shortestIdleDelay < sigShortDelay->shortestIdleDelay) { sigShortDelay = &signals[i]; } if (sigLongDelay == NULL || signals[i].longestIdleDelay > sigLongDelay->longestIdleDelay) { sigLongDelay = &signals[i]; } } printf("\nNumber of Signals: %d\n", nsignals); printf("Shortest delay: signal \"%s\" with delay of %d\n", sigShortDelay ? sigShortDelay->name : "", sigShortDelay ? sigShortDelay->shortestIdleDelay : -1); printf("Longest delay: signal \"%s\" with delay of %d\n", sigLongDelay ? sigLongDelay->name : "", sigLongDelay ? sigLongDelay->longestIdleDelay : -1); return 0; }
void OISSubsystem::_init() { if(!mInitialized) { Logger::getPtr()->logMessage("OIS Subsystem starting up..."); createSignal("keyPressed"); // passes keycode on press createSignal("keyReleased"); // passes keycode on release createSignal("charPressed"); // passes char value on press createSignal("charReleased"); // passes char value on release createSignal("mousePressed"); // passes mouse button code on click createSignal("mouseReleased"); // passes mouse button code on release createSignal("mouseMoved"); // passes mouse pos on move createSignal("mouseMovedAbs");// passes absolute mouse pos when moved createSignal("mouseScrolled"); // passes mouse pos on move createSignal("mouseScrolledAbs");// passes absolute mouse pos when moved assignConversions(); std::map<uint,String>::iterator it = mKeys.begin(); for(it;it!=mKeys.end();++it) { mKeyNames[it->second] = it->first; mKeyStates[it->first] = false; createSignal("released_"+it->second); createSignal("pressed_"+it->second); } std::vector<String>::iterator iter = mButtons.begin(); int i = 0; for(iter;iter!=mButtons.end();++iter) { mButtonNames[*iter] = i; mButtonStates.push_back(false); createSignal("released_"+(*iter)); createSignal("pressed_"+(*iter)); ++i; } mKeyPresses = mKeyStates; mButtonPresses = mButtonStates; Logger::getPtr()->logMessage("OIS Subsystem started up."); mInitialized = true; } }
// signal event setup VRSignal* VRDevice::addSignal(int key, int state) { VRSignal* sig = createSignal(key, state); BStates[key] = false; return sig; }
VRSignal* VRDevice::addSlider(int key) { VRSignal* sig = createSignal(key, 0); SStates[key] = 0; return sig; }
void test_signal2() { dbustl::Message signal = createSignal("TestSignal2"); signal << "Signal 2 string value" << -1; emitSignal(signal); };