Changeset 7818 for trunk/legacy/jvmlink
- Timestamp:
- 11/24/11 16:07:20 (8 years ago)
- Location:
- trunk/legacy/jvmlink/src/main/c++
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/legacy/jvmlink/src/main/c++/JVMLinkClient.cpp
r7817 r7818 258 258 } 259 259 260 void JVMLinkClient::setVar( JVMLinkObject*obj) {260 void JVMLinkClient::setVar(const JVMLinkObject& obj) { 261 261 sendInt(SETVAR_CMD); 262 sendMessage(obj ->name);263 sendInt((int) obj ->type);264 if (obj ->type == ARRAY_TYPE) {265 sendInt((int) obj ->insideType);266 sendInt(obj ->length);267 if (obj ->insideType == STRING_TYPE) {268 std::string* s = (std::string*) obj ->data;269 for (int i=0; i<obj ->length; i++) {262 sendMessage(obj.name); 263 sendInt((int) obj.type); 264 if (obj.type == ARRAY_TYPE) { 265 sendInt((int) obj.insideType); 266 sendInt(obj.length); 267 if (obj.insideType == STRING_TYPE) { 268 std::string* s = (std::string*) obj.data; 269 for (int i=0; i<obj.length; i++) { 270 270 sendMessage(s[i]); 271 271 } … … 273 273 else { 274 274 int sent = 0; 275 int total = obj ->size * obj->length;276 char* buf = (char*) obj ->data;275 int total = obj.size * obj.length; 276 char* buf = (char*) obj.data; 277 277 while (sent < total) { 278 278 sent += send(conn, buf + sent, total - sent, 0); … … 281 281 } 282 282 else { 283 if (obj ->type == STRING_TYPE) sendMessage(*(std::string*) obj->data);284 else send(conn, (char*) obj ->data, obj->size, 0);283 if (obj.type == STRING_TYPE) sendMessage(*(std::string*) obj.data); 284 else send(conn, (char*) obj.data, obj.size, 0); 285 285 } 286 286 } … … 288 288 void JVMLinkClient::setVar(const std::string& argname, int obj) { 289 289 debug("setVar: " << argname << " = " << obj << " (int)"); 290 JVMLinkObject* jvmObj = new JVMLinkObject(argname, INT_TYPE, &obj); 291 setVar(jvmObj); 292 delete jvmObj; 290 JVMLinkObject jvmObj(argname, INT_TYPE, &obj); 291 setVar(jvmObj); 293 292 } 294 293 295 294 void JVMLinkClient::setVar(const std::string& argname, int* obj, int length) { 296 295 debug("setVar: " << argname << " (int array)"); 297 JVMLinkObject* jvmObj = new JVMLinkObject(argname, INT_TYPE, length, obj); 298 setVar(jvmObj); 299 delete jvmObj; 296 JVMLinkObject jvmObj(argname, INT_TYPE, length, obj); 297 setVar(jvmObj); 300 298 } 301 299 302 300 void JVMLinkClient::setVar(const std::string& argname, std::string* obj) { 303 301 debug("setVar: " << argname << " = " << obj << " (string)"); 304 JVMLinkObject* jvmObj = new JVMLinkObject(argname, STRING_TYPE, obj); 305 setVar(jvmObj); 306 delete jvmObj; 302 JVMLinkObject jvmObj(argname, STRING_TYPE, obj); 303 setVar(jvmObj); 307 304 } 308 305 309 306 void JVMLinkClient::setVar(const std::string& argname, std::string* obj, int length) { 310 307 debug("setVar: " << argname << " (string array)"); 311 JVMLinkObject* jvmObj = new JVMLinkObject(argname, STRING_TYPE, length, obj); 312 setVar(jvmObj); 313 delete jvmObj; 308 JVMLinkObject jvmObj(argname, STRING_TYPE, length, obj); 309 setVar(jvmObj); 314 310 } 315 311 316 312 void JVMLinkClient::setVar(const std::string& argname, char obj) { 317 313 debug("setVar: " << argname << " = " << obj << " (char)"); 318 JVMLinkObject* jvmObj = new JVMLinkObject(argname, CHAR_TYPE, &obj); 319 setVar(jvmObj); 320 delete jvmObj; 314 JVMLinkObject jvmObj(argname, CHAR_TYPE, &obj); 315 setVar(jvmObj); 321 316 } 322 317 323 318 void JVMLinkClient::setVar(const std::string& argname, char* obj, int length) { 324 319 debug("setVar: " << argname << " (char array)"); 325 JVMLinkObject* jvmObj = new JVMLinkObject(argname, CHAR_TYPE, length, obj); 326 setVar(jvmObj); 327 delete jvmObj; 320 JVMLinkObject jvmObj(argname, CHAR_TYPE, length, obj); 321 setVar(jvmObj); 328 322 } 329 323 330 324 void JVMLinkClient::setVar(const std::string& argname, Byte obj) { 331 325 debug("setVar: " << argname << " = " << obj.data << " (byte)"); 332 JVMLinkObject* jvmObj = new JVMLinkObject(argname, BYTE_TYPE, &obj); 333 setVar(jvmObj); 334 delete jvmObj; 326 JVMLinkObject jvmObj(argname, BYTE_TYPE, &obj); 327 setVar(jvmObj); 335 328 } 336 329 337 330 void JVMLinkClient::setVar(const std::string& argname, Byte* obj, int length) { 338 331 debug("setVar: " << argname << " (byte array)"); 339 JVMLinkObject* jvmObj = new JVMLinkObject(argname, BYTE_TYPE, length, obj); 340 setVar(jvmObj); 341 delete jvmObj; 332 JVMLinkObject jvmObj(argname, BYTE_TYPE, length, obj); 333 setVar(jvmObj); 342 334 } 343 335 344 336 void JVMLinkClient::setVar(const std::string& argname, float obj) { 345 337 debug("setVar: " << argname << " = " << obj << " (float)"); 346 JVMLinkObject* jvmObj = new JVMLinkObject(argname, FLOAT_TYPE, &obj); 347 setVar(jvmObj); 348 delete jvmObj; 338 JVMLinkObject jvmObj(argname, FLOAT_TYPE, &obj); 339 setVar(jvmObj); 349 340 } 350 341 351 342 void JVMLinkClient::setVar(const std::string& argname, float* obj, int length) { 352 343 debug("setVar: " << argname << " (float array)"); 353 JVMLinkObject* jvmObj = new JVMLinkObject(argname, FLOAT_TYPE, length, obj); 354 setVar(jvmObj); 355 delete jvmObj; 344 JVMLinkObject jvmObj(argname, FLOAT_TYPE, length, obj); 345 setVar(jvmObj); 356 346 } 357 347 358 348 void JVMLinkClient::setVar(const std::string& argname, bool obj) { 359 349 debug("setVar: " << argname << " = " << obj << " (bool)"); 360 JVMLinkObject* jvmObj = new JVMLinkObject(argname, BOOL_TYPE, &obj); 361 setVar(jvmObj); 362 delete jvmObj; 350 JVMLinkObject jvmObj(argname, BOOL_TYPE, &obj); 351 setVar(jvmObj); 363 352 } 364 353 365 354 void JVMLinkClient::setVar(const std::string& argname, bool* obj, int length) { 366 355 debug("setVar: " << argname << " (bool array)"); 367 JVMLinkObject* jvmObj = new JVMLinkObject(argname, BOOL_TYPE, length, obj); 368 setVar(jvmObj); 369 delete jvmObj; 356 JVMLinkObject jvmObj(argname, BOOL_TYPE, length, obj); 357 setVar(jvmObj); 370 358 } 371 359 372 360 void JVMLinkClient::setVar(const std::string& argname, double obj) { 373 361 debug("setVar: " << argname << " = " << obj << " (double)"); 374 JVMLinkObject* jvmObj = new JVMLinkObject(argname, DOUBLE_TYPE, &obj); 375 setVar(jvmObj); 376 delete jvmObj; 362 JVMLinkObject jvmObj(argname, DOUBLE_TYPE, &obj); 363 setVar(jvmObj); 377 364 } 378 365 379 366 void JVMLinkClient::setVar(const std::string& argname, double* obj, int length) { 380 367 debug("setVar: " << argname << " (double array)"); 381 JVMLinkObject* jvmObj = new JVMLinkObject(argname, DOUBLE_TYPE, length, obj); 382 setVar(jvmObj); 383 delete jvmObj; 368 JVMLinkObject jvmObj(argname, DOUBLE_TYPE, length, obj); 369 setVar(jvmObj); 384 370 } 385 371 386 372 void JVMLinkClient::setVar(const std::string& argname, long long obj) { 387 373 debug("setVar: " << argname << " = " << obj << " (long)"); 388 JVMLinkObject* jvmObj = new JVMLinkObject(argname, LONG_TYPE, &obj); 389 setVar(jvmObj); 390 delete jvmObj; 374 JVMLinkObject jvmObj(argname, LONG_TYPE, &obj); 375 setVar(jvmObj); 391 376 } 392 377 393 378 void JVMLinkClient::setVar(const std::string& argname, long long* obj, int length) { 394 379 debug("setVar: " << argname << " (long array)"); 395 JVMLinkObject* jvmObj = new JVMLinkObject(argname, LONG_TYPE, length, obj); 396 setVar(jvmObj); 397 delete jvmObj; 380 JVMLinkObject jvmObj(argname, LONG_TYPE, length, obj); 381 setVar(jvmObj); 398 382 } 399 383 400 384 void JVMLinkClient::setVar(const std::string& argname, short obj) { 401 385 debug("setVar: " << argname << " = " << obj << " (short)"); 402 JVMLinkObject* jvmObj = new JVMLinkObject(argname, SHORT_TYPE, &obj); 403 setVar(jvmObj); 404 delete jvmObj; 386 JVMLinkObject jvmObj(argname, SHORT_TYPE, &obj); 387 setVar(jvmObj); 405 388 } 406 389 407 390 void JVMLinkClient::setVar(const std::string& argname, short* obj, int length) { 408 391 debug("setVar: " << argname << " (short array)"); 409 JVMLinkObject* jvmObj = new JVMLinkObject(argname, SHORT_TYPE, length, obj); 410 setVar(jvmObj); 411 delete jvmObj; 392 JVMLinkObject jvmObj(argname, SHORT_TYPE, length, obj); 393 setVar(jvmObj); 412 394 } 413 395 414 396 void JVMLinkClient::setVarNull(const std::string& argname) { 415 397 debug("setVarNull: " << argname); 416 JVMLinkObject* jvmObj = new JVMLinkObject(argname, NULL_TYPE, NULL); 417 setVar(jvmObj); 418 delete jvmObj; 398 JVMLinkObject jvmObj(argname, NULL_TYPE, NULL); 399 setVar(jvmObj); 419 400 } 420 401 -
trunk/legacy/jvmlink/src/main/c++/JVMLinkClient.h
r7817 r7818 86 86 int closeConnection(); 87 87 JVMLinkObject* getVar(const std::string&); 88 void setVar( JVMLinkObject*);88 void setVar(const JVMLinkObject&); 89 89 void setVar(const std::string&, int); 90 90 void setVar(const std::string&, int*, int); -
trunk/legacy/jvmlink/src/main/c++/JVMLinkObject.cpp
r7813 r7818 39 39 40 40 // Constructor for single primitives 41 JVMLinkObject::JVMLinkObject(const std::string& name, Type type, void* data) {41 JVMLinkObject::JVMLinkObject(const std::string& name, Type type, const void* data) { 42 42 this->name = name; 43 43 this->size = getSize(type); … … 48 48 49 49 // Constructor for arrays 50 JVMLinkObject::JVMLinkObject(const std::string& name, Type type, int length, void* data) {50 JVMLinkObject::JVMLinkObject(const std::string& name, Type type, int length, const void* data) { 51 51 this->name = name; 52 52 this->size = getSize(type); -
trunk/legacy/jvmlink/src/main/c++/JVMLinkObject.h
r7813 r7818 71 71 public: 72 72 JVMLinkObject(const std::string&); 73 JVMLinkObject(const std::string&, Type, void*);74 JVMLinkObject(const std::string&, Type, int, void*);73 JVMLinkObject(const std::string&, Type, const void*); 74 JVMLinkObject(const std::string&, Type, int, const void*); 75 75 76 76 ~JVMLinkObject(void); … … 79 79 int size, length; 80 80 Type type, insideType; 81 void* data;81 const void* data; 82 82 83 83 int getDataAsInt();
Note: See TracChangeset
for help on using the changeset viewer.