Commit 4e4dd752 authored by hrchilds's avatar hrchilds

Update from June 23, 2005

git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@487 18c085ea-50e0-402c-830e-de6fd14e8384
parent 586e50de
......@@ -69,6 +69,10 @@ $0 = shift @ARGV;
# Jeremy Meredith, Thu Apr 28 18:02:28 PDT 2005
# Added multi-compiler support. Added linux-intel-icc platform.
#
# Brad Whitlock, Mon May 9 11:45:21 PDT 2005
# Added support for -newconsole. I split the makemovie.py script and
# made this program call makemoviemain.py.
#
###############################################################################
......@@ -252,6 +256,7 @@ $fullusage = "$usage
-gdb-mdserver Run the mdserver under gdb.
-break <funcname> Add the specified breakpoint in gdb.
-xterm Run gdb in an xterm window.
-newconsole Run any VisIt component in a new console window.
-totalview <comp> Run totalview on the given component.
-valgrind <comp> Run valgrind on the given component.
-numrestarts <#> Number of attempts to restart a failed engine.
......@@ -328,6 +333,7 @@ $add_movie_args = 0;
$envonly = 0;
$logging = 0;
$req_compiler = "";
$use_new_console = 0;
# Parse the arguments
@visitargs = ();
......@@ -378,6 +384,7 @@ while (scalar(@ARGV) > 0) {
elsif ($arg eq "-gdb-mdserver") { if($exe_name eq "mdserver") {$debug_gdb = 1;} else {push @visitargs, $arg;}}
elsif ($arg eq "-gdb-vcl") { if($exe_name eq "vcl") {$debug_gdb = 1;} else {push @visitargs, $arg;}}
elsif ($arg eq "-xterm") { if($debug_gdb) {$gdb_xterm = 1;} else {push @visitargs, $arg;}}
elsif ($arg eq "-newconsole") { $use_new_console = 1; }
elsif ($arg eq "-break") { if($debug_gdb) {$bp = shift; push @breakpoints, $bp; } else {push @visitargs, $arg;}}
elsif ($arg eq "-compiler") { $req_compiler = shift; push @visitargs, "-compiler", $req_compiler; }
elsif ($arg eq "-totalview" ) {
......@@ -778,7 +785,7 @@ EOF
# Add the movie script to the arguments.
if($add_movie_args)
{
push @visitargs, "-s", "$visitscriptdir/makemovie.py", "-nowin";
push @visitargs, "-s", "$visitscriptdir/makemoviemain.py", "-nowin";
}
......@@ -1244,6 +1251,14 @@ else
chomp($printcmd[0] = `basename $printcmd[0]`);
print STDERR "Running: @printcmd\n";
if ($security_key_set) { push @visitcmd, "-key", $security_key; }
if($use_new_console)
{
@tmpcmd = @visitcmd;
@visitcmd = ("xterm", "-title", "VisIt $exe_name$ver", "-fn", "fixed", "-e");
push @visitcmd, @tmpcmd;
}
exec @visitcmd or die "Can't execute visit: $!\n";
}
}
......
This diff is collapsed.
import sys, string
###############################################################################
# Function: main
#
# Purpose: This is the main function for the program.
#
# Programmer: Brad Whitlock
# Date: Mon Jul 28 15:35:54 PST 2003
#
# Modifications:
#
###############################################################################
def main():
makemovie = ""
for arg in sys.argv[1:]:
if string.find(arg, "makemovie") != -1:
makemovie = string.replace(arg, "makemoviemain", "makemovie")
break
if makemovie == "":
print "The makemoviemain script could not locate the makemovie script!"
sys.exit(-1)
else:
# Source the makemovie.py script, which contains all of the
# code for the MakeMovie class.
Source(makemovie)
movie = MakeMovie()
movie.ProcessArguments()
movie.GenerateFrames()
if(movie.EncodeFrames()):
movie.Cleanup()
sys.exit(0)
#
# Call the main function.
#
main()
......@@ -33,6 +33,7 @@ static const char usage[] =
" -background <color> Background color for GUI\n"
" -foreground <color> Foreground color for GUI\n"
" -nowin Run without viewer windows\n"
" -newconsole Run the component in a new console window\n"
"\n"
" Scripting arguments:\n"
" -s <scriptname> Runs the specified VisIt script. Note that\n"
......@@ -93,6 +94,9 @@ int ReadKey(const char *key, char **keyval);
* Brad Whitlock, Fri Jun 3 14:46:18 PST 2005
* Added code to flush stderr so the Java client can start up the viewer.
*
* Brad Whitlock, Wed Jun 22 17:24:08 PST 2005
* Added support for -newconsole.
*
*****************************************************************************/
int
......@@ -103,6 +107,7 @@ main(int argc, char *argv[])
*visitargs = 0, *cptr = 0, *cptr2 = 0;
int i, size = 0, retval = 0, skipping = 0;
int addMovieArguments = 0, addVISITARGS = 1, useShortFileName = 0;
int newConsole = 0;
/*
* Default values.
......@@ -183,12 +188,23 @@ main(int argc, char *argv[])
/* Skip the next argument too. */
++i;
}
else if(ARG("-newconsole"))
{
newConsole = 1;
}
else
{
PUSHARG(argv[i]);
}
}
/* If we want a new console, allocate it now. */
if(newConsole)
{
FreeConsole();
AllocConsole();
}
/*
* Add some stuff to the environment.
*/
......
/* XPM */
static const char * command_xpm[] = {
"32 32 16 1",
". c None",
"+ c #007F17",
"@ c #64C10D",
"# c #00FF33",
"$ c #CDFF93",
"% c #000000",
"& c #EDEDED",
"* c #C4C4C4",
"= c #FFFFFF",
"- c #0000FF",
"; c #FFC46B",
"> c #00FFFF",
", c #00470B",
"' c #69F429",
") c #538C1A",
"! c #CBD6BC",
"................................",
".........................+@#$...",
".........................+@#$...",
"..%%%%%%%%%%%%%%%%%%%....+@#$...",
"..%&&&&&&&&&&&&&&&&&%*...+@#$...",
"..%&================%*...+@#$...",
"..%&================%*...+@#$...",
"..%&================%*...+@#$...",
"..%&---==%%%==;;=%%%%*...+@#$...",
"..%&&&&==&&====&==&&%*...+@#$...",
"..%&================%*...+@#$...",
"..%&====%%==>>>>>>==%*...+@#$...",
"..%&====&&====&&&&==%*...+@#$...",
"..%&================%*...+@#$...",
"..%&====%%=%%%%=;;;=%*...+@#$...",
"..%&====&&===&&==&&=%*...+@#$...",
"..%&================%*...+@#$...",
"..%&================%*...+@#$...",
"..%&================%*...+@#$...",
"..%&================%*,++@@##'$.",
"..%&----==%%%%%=====%*.,+)@##$..",
"..%&&&&&===&&&&=====%*.,+)@#'$..",
"..%&================%*..,+@#$!..",
"..%&---===%%%;;;;=%%%*..,+@'$...",
"..%&&&&====&&&&&===&%*...+@$!...",
"..%&================%*...+@$....",
"..%&====%%%===>>>>>=%*....@.....",
"..%&====&&&====&&&&=%*..........",
"..%&&&&&&&&&&&&&&&&&%*..........",
"..%%%%%%%%%%%%%%%%%%%*..........",
"...*******************..........",
"................................"};
/* XPM */
static const char * moviereel_xpm[] = {
"108 80 40 1",
"2 c None",
". c #091124",
"+ c #13457F",
"@ c #5F7AA1",
"# c #839FC4",
"$ c #A0B6D7",
"% c #BCC6D7",
"& c #C8D4E8",
"* c #3E4956",
"= c #DBE2F7",
"- c #173866",
"; c #EAECFC",
"> c #0D264A",
", c #7B7B7F",
"' c #62646A",
") c #EBF4FE",
"! c #2A2E3F",
"~ c #043CB0",
"{ c #778CAD",
"] c #466695",
"^ c #02225D",
"/ c #9CA2AC",
"( c #0D326A",
"_ c #06193D",
": c #F4F2FC",
"< c #333B4E",
"[ c #2B4D83",
"} c #064ABE",
"| c #092E66",
"1 c #8E8F95",
"3 c #9BAAD3",
"4 c #B5B9C5",
"5 c #115EC1",
"6 c #ADA9AB",
"7 c #42557D",
"8 c #031D53",
"9 c #032761",
"0 c #5C6A92",
"a c #04379D",
"b c #757FA8",
"222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222",
"222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222",
"2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222=%1]->(>(3)",
"2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222);b*>_>||>>>$)",
"2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222:;&@9|899^-_+-*32",
"2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222&@-((9^|989-#=&)2",
"2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222);1>8>8_^^|988|%2222",
"222222222222222222222222222222222222222222222222222222222222222222222222222222222222222)%<_-|80b8^^9|88$2222",
"22222222222222222222222222222222222222222222222222222222222222222222222222222222222222&0_--|@&2{8^8_9^>$2222",
"222222222222222222222222222222222222222222222222222222222222222222222222222222222222;/!>+^]&)221_^^88^>$2222",
"22222222222222222222222222222222222222222222222222222222222222222222222222222222222=7.8^|%)2222/_8|^^8832222",
"2222222222222222222222222222222222222222222222222222222222222222222222222222222222$*_8^8@)222221>88^^8>$);;2",
"222222222222222222222222::;::;:2:222222222222222222222222222222222222222222222222{>(88|80)22222{8(^^9_(#&3=:",
"2222222222222222222222;&&&444%%%==22222222222222222222222222222222222222222222220-8^99987:2222)$89^^(^8-(>/:",
"2222222222222222222:=4/1,,11111/6%&=222222222222222222222222222222222222222222&]8^(^(|^_7:222)%7^9^^||8___3)",
"22222222222222222:%1,,,,116%&&611614==222222222222222222222222222222222222222%<.|+|^99^^0;2:40-|999^^9|9>>3)",
"2222222222222222%1',,,,11%22222%1/114%;222222222222222222222222222222222222:3>>|##99999^7;&@_>988^((9^98__/:",
"22222222222222&6',,,1111222%611/61/,144;2222222222222222222222222222222222)@<>>%)&>-9^^8]{<>_9899^9|9^^8^>3:",
"222222222222:%1',,,1,,1//'**'77'6161,/64:22222222222222222222222222222222='>.7=224._899^9-^89|8^99^^9999_8/:",
"22222222222:4'',,{,,,110*77*7,/616/41,41;:2222222222222222222222222222222]_>0=2223>_8^9^9999|^898|9^^9^8_83:",
"22222222222/',1,,,1,,b{-a+a+022//6/66,/4,;:2222222222222222222222222222=7_>|322224.>_8^^99999^^999^^^^999>3)",
"222222222:1'///310,111@|a~~a97//1/66611%,/=:22222222222222222222222222&-8(|_&22223_88||999999^^999^88^99993)",
"22222222;6,6;22)3b,1,b@(++a9-06646/664,/,41:22222222222222222222222224+9|^|_4222=b_8888899999^^999^88^99993)",
"222222226,%222)$<7,,1{b[|9-7b/$///6444,6b//&222222222222222222222222&(8a((>.422&]|88^^9999999^^999^88^99993)",
"2222222%,4:22;b->71,/1/#{b#33/344%$344111!//:22222222222222222222224_-9a|8>>324-__^^899999999^^^99^88^99993)",
"222222&,1;222#+|-01,/113///1/%%$]*-<,461#.*0;2222222222222222222222!.]{88|_.#{-_^^|88^^899999^^^99^88^99993)",
"22222)10%:22#(9-<@1616/6664/44@+(-<<*66/1>._&22222222222222222222#!_b)@8|8__-_8|^|88^99999999^^999^88^99993)",
"22222%'1&2:$--((0111!16//116${++9|[*<%6/0>>>];2222222222222222223-_b=20_88___8(98(899^^999999^^999^88^99993)",
"2222=,,,%2&[((9]{/1,16/4<,66{|++|(<70416*<>.!%22222222222222222$(>1:220.888^^^999999999999999^^999^88^9998$)",
"22226,,,6=7|->b{/1146'1///637|aa^^b/%%14!<0-^0:22222222222222)$>>{222208^999^999^999999999999^^999^88^9998$)",
"222;,,,,b#77@@#161/1.../4643_9a~|8$2&&{/!*10.-:222222222222224>..=22220^9999^^^^^999999999999^^999^88^999^$)",
"2224',1,1{#{#3b////...!46//#8|a||.%246/07'1b7_&222222222222248_>>422;3>9||999888^99999999999999999^88^999^$)",
"22:1,,111/1#111,*/1...166%31-8998>%4%14,,7/7&>/222222222222%>>88_%2;b_-^(||9^888^999999^9999999999^88^999^$)",
"22&,,111,/1//1/'/6,<<160'$44b-->714%4/1/*,67:,/)2222222222%>_^88_&=@8_8|||99^^^^^^9^^^^^^^99999999^88^999^4)",
"224,1111/1/116//6641666{%&444$4$3&4&16'1!1/1;4$222222222)=8--_^^8$]_>|(9|99^^^999^^^^^^^^^^9999999^88^999>$)",
"22/1{11/1/4//116/&'//664444%4%%%%/&41/,*',14:##)22222222&>>{08^^|-8988|999^^^^99999^^^^^^^^9999999^8^^999^4:",
"22/11{///*(-|[b/6,*/66/44%4%%%&%%4%1%***16*=&-&;222222;4!.3)08|^99^^^99999^^^999999^^888^^99999999^8^^999_4:",
"2211/13b*>a+a+@//4/4$&41/6&&%%=&41/6,<'0,/{=5]%:2222224>./22@(_99999999999999999999^^888^9999999|9^8^^999_4:",
"22,116b7<|~}~}5]{#3&#[9-+7%&&%&&4/16!!<'17%]55;2222223>_{2220>8(999999999999999999^^^888^^99999999^^^^999_%:",
"2261137[[a~}55}}a[]]+99+(-$%&%&%/,4!!*<,b[55a#:2222)3(|_42227>|^999999999999999999^^^8^^^^^^9^^999^^^^9998%:",
"22%/##}}}~}}}}~}a}}aa}~a99#3%%41,%*!!.00-a~}+$:222){(988#2=b>89^999999999999999^^^^^^^^^^^^^^^^^99^^^99998%:",
"22%$#55}}}}}}~~~~~~}}}~~a|@{3/1b$b.!!7|8a~~}]&2222@8(88($=0__8^(999999999999999^^8^^^^9^^^^^^^^^^^^^99999>%:",
"22%$]}5}}}}}}}}}}}}}}}}}5~~~}}55]+5}5~~~~}}~{;22)7>]--8^#[_^-888^99999999999999^88^^99999^^^^^^^^^^^99999>%:",
"22&3}5}}~~~}~}}}}}}}}}}}}}}5}}}555}5}5}}}}}]%22&*>0=-_8^|^-888^8^99999999999999^88^^999999^^^^^^^^^999999>%:",
"22&]}~}~~a~}}}}}}}}5}}}}~}~}5}}}}}~~5}~}}5[%;;%->122!_9899999^88^9999999^^9|988^^899^||9|8998^9^88^9^^99|_&)",
"22$}}}}~aa[]@@@@5}}}~}~~}~}}~}5}}}~~}}}}5]&;;b9-{=2&*_8^99999^^^^99999999988^999^8^^^|9(^8^^999^8^^9|9^_8_&)",
"22#55}~+@#$$4446$3]77+5}}}}}}5}}}}}}~}[7$));7.-8b:2$|8^8^^^^9^99^999999999^^99^88^^^9|8|||8_8^8|88^9^8|>_>%)",
"2=@}}5]]#$%444%%%64$%$]]5+5~a}a~~a~}}]$=))=[--881;1>8^8^^^^^^^99^99999998999^99^8^^9|(_(_8><{{988^99^|{3/b=2",
"2;5a]331',1/64616%44/b/3@b$b8!7*0]{%=222){><{>||{]>88^^^^^^^^999^99999999998899|^^^9|(80#&)))%^98^998-%:2222",
"2)+]%=4444/1,,b111/1/6,,22/!*0,6'3=2222&0!722-^8^>^^|^89^^99^^^^999999999^8^99888^9989(%2222)=>8^8998>422222",
"2=[%)2%4664%466$441,',%22,7'{6/'&2222=#-9])2=>_|(9(88^9899999^88^9999999^8^99^9|88^989!=2222:=>>^89||(%22222",
"2&0)222%4,**'''7<!<!!*7**,,/4,12222:%7^9(@)23>889|(8|88^99999^8_^99^^^^^^8^9_8[@-88^9>8&22222=^>|^|988%22222",
")&#%2222%&/7<<<!!<!<<<',1141,&2222=0_!]|8#%@>^|89999^^^^999999^^|^^^^9988>_>7%):*_8^99_&22222=_9^99^88422222",
"2&$72222:%44/,,*''7'11/14,'22222)#<_@=%8^+[|889^999^^^^9999999^^88|9^^9^^_-%:22)*_899|9&22222=>9999^88422222",
":430b22222&/446466644/1,,22222)/!_>!22$>>^8^999999^^^^^9999999^^9^^999989^-&222;789^8|+&)222=%-89^9^__422222",
";%7#]#):2222=611,,,,1/222222=/7_]7.*22]>_^|9^^^^9^^^^^^^99999^^^|988|8^|8_-;22227^|(9(-{#,7<<-99_8>>>>3)2222",
":%_@b]{&:222222222222222))&b<>_#)#-_b(_^^^88^99^^^^^^^^^^^^^^^^^_>>^][-8|^(=222)088^((_>>!<*77]]]7<!>_'b/422",
"2$>-7#<*3;)2222222222:==b*.>@].22{_<>^_^|^899999^^^^^^^^^^^^^^^8_.<227_|99-=22;%-9->><b4%&=)))))));=&{*_<.22",
"2%>_-@#*<<{==;::)==%#0!>><(%2@^#0>_9__(988^|988^^^^^^^^^^888^^^8>1=22]|9(8+%%0>_!<b3;222222222222222222;{<22",
"2&(>|9]@{]-^-<<*<!!>!<*7;{_227888|8^^|98^^^8^^9^^^^^9^^^^888^^^8%22227^999|->>7#&;:2222222222222222222222222",
"2=]^|9_[0#]@#-b!b<{b02702{-(-98^^999999^^^99^^^^^^^|989|88^9^^^>&222)]>>>>>7#=222222222222222222222222222222",
"227>9|||>[7{{0%!;7%#02[[[|8^|9^9999999^^^^^^^^^^99^9|998988_8(9_;222;7_>-@&222222222222222222222222222222222",
"227]_(_8889-([#>3-]<_-^8^999^^^^9999999999^^^^9^899^^99|8]$]|88|&2=b->]1)22222222222222222222222222222222222",
"221$8|>8888898-_>>|||_8|999^^^99999999999^^99999889|((9[%&2]8^9|%{>>]$22222222222222222222222222222222222222",
"222{@->8_8^9+^898_^89(89^8^9|99^99999999^^99999^>_(98_(#2227_>9^^-0=)222222222222222222222222222222222222222",
"222{3](__89^^^9|-9898|(^|99(988^9^9^9^99^999^88^(_>^|||#222'>>9|02222222222222222222222222222222222222222222",
"2222b]@8_8|(9||88|8-^8(89^^^88^|^^9^9^9999998^9|>0%@|._#2=4<._@222222222222222222222222222222222222222222222",
"2222$*b{888^99^9^9|_9|_-99999|98^^^^^999^999^9(-&22@^>>#$'.>0%2222222222222222222222222222222222222222222222",
"22222{<&<[889^^^988|899^8(988^8^8(^89899998^^8_]222b>88<_<{=222222222222222222222222222222222222222222222222",
"2222220{7$_-^8|88|98(^_^^8^(|88|9^^^(^8_^^]3]88722;b>>>|$222222222222222222222222222222222222222222222222222",
"2222222@-=<{8|_9^89^8^(9|^^8_89^^^(89^_8!&2;@_^]23'__0422222222222222222222222222222222222222222222222222222",
"22222222*/_=7[+^89^|9|8898^|(999(98^7@8_<=220^|><.!0%)222222222222222222222222222222222222222222222222222222",
"222222222*>%*$@7[99889^98(|8888((9-#2)<><22=]_><*22222222222222222222222222222222222222222222222222222222222",
"2222222222'*<3{#&[{|+->>>8>[[>]%%[832;|8<%@<_<0&222222222222222222222222222222222222222222222222222222222222",
"222222222221_0b{$7&<&$>/%!722_*22!./2=78>_>{2222222222222222222222222222222222222222222222222222222222222222",
"2222222222224*!0&<;<%=_&2!722>72=!>07<>>0$222222222222222222222222222222222222222222222222222222222222222222",
"2222222222222)/7|-{[$&>&2[7=2--#7<>!*,4222222222222222222222222222222222222222222222222222222222222222222222",
"222222222222222)$0[.-7>]7--[|^(|70#&222222222222222222222222222222222222222222222222222222222222222222222222",
"22222222222222222222$/$/3//$$%=22222222222222222222222222222222222222222222222222222222222222222222222222222",
"222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222"};
/* XPM */
static const char *savemovie_xpm[] = {
/* width height num_colors chars_per_pixel */
" 32 32 5 1",
/* colors */
". c #000000",
"# c #999999",
"a c #cccccc",
"b c #00ffff",
"c c #ffffff",
/* pixels */
".cc.aaaaaacaaaaaa.aacaaaaa.cc.bb",
"....aaaaaacaa.aca.aacaaaaa....bb",
"....aaaaaaacaa...aacaaaaaa....##",
"....aaaaaaaacaacaacaaaaaaa....##",
"....aaaaaaaaacccccaaaaaaaa....##",
"....aaaaaaaaaaacaaaaaaaaaa....##",
".cc........................cc.##",
".cc.aaaaaaaaaaacaaaaaaaaaa.cc.##",
"....aaaaaaaaacccccaaaaaaaa....##",
"....aaaaaaaacaacaacaaaaaaa....##",
"....aaaaaaacaa...aacaaaaaa....##",
"....aaaaaacaa.aca.aacaaaaa....##",
"....aaaaaacaaaaca.aacaaaaa....##",
".cc.aaaacccccccc.ccccccaaa.cc.##",
".cc.aaaaaacaaaa.aaaacaaaaa.cc.##",
"....aaaaaacaaa.caaaacaaaaa....##",
"....aaaaaaaca.....acaaaaaa....##",
"....aaaaaaaacaacaacaaaaaaa....##",
"....aaaaaaaaacccccaaaaaaaa....##",
"....aaaaaaaaaaacaaaaaaaaaa....##",
".cc........................cc.##",
".cc.aaaaaaaaaaacaaaaaaaaaa.cc.##",
"....aaaaaaaaacccccaaaaaaaa....##",
"....aaaaaaaacaacaacaaaaaaa....##",
"....aaaaaaacaaa.aaacaaaaaa....##",
"....aaaaaacaaa..aaaacaaaaa....##",
"....aaaaaacaaaa.aaaacaaaaa....##",
".cc.aaaaccccccc.cccccccaaa.cc.##",
".cc.aaaaaacaaaa.aaaacaaaaa.cc.##",
"....aaaaaacaaaa.aaaacaaaaa....##",
"bb##############################",
"bb##############################"
};
......@@ -1372,6 +1372,66 @@ AttributeGroup::Select(int index, void *address, int length)
}
}
// ****************************************************************************
// Method: AttributeGroup::SelectField
//
// Purpose:
// Lets the user select a field.
//
// Arguments:
// index : The field to select.
//
// Programmer: Brad Whitlock
// Creation: Tue May 3 11:11:08 PDT 2005
//
// Modifications:
//
// ****************************************************************************
void
AttributeGroup::SelectField(int index)
{
if(index >= 0 && index < typeMap.size())
{
if(typeMap[index].address != 0)
typeMap[index].selected = true;
}
}
// ****************************************************************************
// Method: AttributeGroup::SelectFields
//
// Purpose:
// Lets the user select multiple fields.
//
// Arguments:
// indices : The indices of the fields to select.
//
// Programmer: Brad Whitlock
// Creation: Tue May 3 11:11:32 PDT 2005
//
// Modifications:
//
// ****************************************************************************
void
AttributeGroup::SelectFields(const std::vector<int> &indices)
{
// Select and unselect to make sure that the addresses are all okay.
SelectAll();
if(indices.size() > 0)
{
UnSelectAll();
for(int i = 0; i < indices.size(); ++i)
{
int index = indices[i];
if(index >= 0 && index < typeMap.size())
typeMap[index].selected = true;
}
}
}
// ****************************************************************************
// Method: AttributeGroup::UnSelectAll
//
......
......@@ -62,6 +62,9 @@ class DataNode;
// Hank Childs, Fri Jan 28 15:36:03 PST 2005
// Re-inherit exceptions from VisItException.
//
// Brad Whitlock, Tue May 3 11:05:15 PDT 2005
// I added SelectField, SelectFields and made Select private.
//
// ****************************************************************************
class STATE_API AttributeGroup
......@@ -112,7 +115,8 @@ public:
// Selects all of the attributes in the AttributeGroup
virtual void SelectAll() = 0;
void Select(int index, void *address, int length = 0);
void SelectField(int);
void SelectFields(const std::vector<int> &);
void UnSelectAll();
virtual bool CreateNode(DataNode *node, bool, bool);
......@@ -136,6 +140,8 @@ public:
static bool VersionLessThan(const char *configVersion, const char *version);
protected:
void Select(int index, void *address, int length = 0);
// Used to instantiate a new sub attribute.
virtual AttributeGroup *CreateSubAttributeGroup(int attrId);
......
This diff is collapsed.
Function: DeclareMethod
Declaration: void DeclareMethod(const std::string &name, const std::string &proto);
Definition:
void
ClientInformation::DeclareMethod(const std::string &name, const std::string &proto)
{
methodNames.push_back(name);
methodPrototypes.push_back(proto);
SelectField(1);
SelectField(2);
}
Function: GetMethodIndex
Declaration: int GetMethodIndex(const std::string &name) const;
Definition:
int
ClientInformation::GetMethodIndex(const std::string &name) const
{
for(int i = 0; i < methodNames.size(); ++i)
{
if(methodNames[i] == name)
return i;
}
return -1;
}
Function: GetMethod
Declaration: std::string GetMethod(int i) const;
Definition:
std::string
ClientInformation::GetMethod(int i) const
{
if(i >= 0 && i < methodNames.size())
return methodNames[i];
return "";
}
Function: GetMethodPrototype
Declaration: std::string GetMethodPrototype(int i) const;
Definition:
std::string
ClientInformation::GetMethodPrototype(int i) const
{
if(i >= 0 && i < methodPrototypes.size())
return methodPrototypes[i];
return "";
}
Function: ClearMethods
Declaration: void ClearMethods();
Definition:
void
ClientInformation::ClearMethods()
{
methodNames.clear();
methodPrototypes.clear();
SelectField(1);
SelectField(2);
}
#ifndef CLIENTINFORMATION_H
#define CLIENTINFORMATION_H
#include <state_exports.h>
#include <string>
#include <AttributeSubject.h>
// ****************************************************************************
// Class: ClientInformation
//
// Purpose:
// This class contains the attributes that describe the client
//
// Notes: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Thu May 5 19:15:08 PST 2005
//
// Modifications:
//
// ****************************************************************************
class STATE_API ClientInformation : public AttributeSubject
{
public:
ClientInformation();
ClientInformation(const ClientInformation &obj);
virtual ~ClientInformation();
virtual ClientInformation& operator = (const ClientInformation &obj);
virtual bool operator == (const ClientInformation &obj) const;
virtual bool operator != (const ClientInformation &obj) const;
virtual const std::string TypeName() const;
virtual bool CopyAttributes(const AttributeGroup *);
virtual AttributeSubject *CreateCompatible(const std::string &) const;
virtual AttributeSubject *NewInstance(bool) const;
// Property selection methods
virtual void SelectAll();
void SelectClientName();
void SelectMethodNames();
void SelectMethodPrototypes();
// Property setting methods
void SetClientName(const std::string &clientName_);
void SetMethodNames(const stringVector &methodNames_);
void SetMethodPrototypes(const stringVector &methodPrototypes_);
// Property getting methods
const std::string &GetClientName() const;
std::string &GetClientName();
const stringVector &GetMethodNames() const;
stringVector &GetMethodNames();
const stringVector &GetMethodPrototypes() const;
stringVector &GetMethodPrototypes();
// Keyframing methods
virtual std::string GetFieldName(int index) const;
virtual AttributeGroup::FieldType GetFieldType(int index) const;
virtual std::string GetFieldTypeName(int index) const;
virtual bool FieldsEqual(int index, const AttributeGroup *rhs) const;
// User-defined methods
void DeclareMethod(const std::string &name, const std::string &proto);
int GetMethodIndex(const std::string &name) const;
std::string GetMethod(int i) const;
std::string GetMethodPrototype(int i) const;
void ClearMethods();
private:
std::string clientName;
stringVector methodNames;
stringVector methodPrototypes;
};
#endif
<?xml version="1.0"?>
<Attribute name="ClientInformation" purpose="This class contains the attributes that describe the client" persistent="false" exportAPI="STATE_API" exportInclude="state_exports.h" codefile="ClientInformation.code">
<Field name="clientName" label="Client name" type="string">
</Field>
<Field name="methodNames" label="Method names" type="stringVector">
</Field>
<Field name="methodPrototypes" label="Method prototypes" type="stringVector">
</Field>
<Function name="DeclareMethod" user="true" member="true">
</Function>
<Function name="GetMethodIndex" user="true" member="true">
</Function>
<Function name="GetMethod" user="true" member="true">
</Function>
<Function name="GetMethodPrototype" user="true" member="true">
</Function>
<Function name="ClearMethods" user="true" member="true">
</Function>
</Attribute>
This diff is collapsed.
#ifndef CLIENTINFORMATIONLIST_H
#define CLIENTINFORMATIONLIST_H
#include <state_exports.h>
#include <AttributeSubject.h>
class ClientInformation;
// ****************************************************************************
// Class: ClientInformationList
//
// Purpose:
// Contains the information for all connected clients.
//
// Notes: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Thu May 5 18:51:39 PST 2005
//
// Modifications:
//
// ****************************************************************************
class STATE_API ClientInformationList : public AttributeSubject
{
public:
ClientInformationList();
ClientInformationList(const ClientInformationList &obj);
virtual ~ClientInformationList();
virtual ClientInformationList& operator = (const ClientInformationList &obj);
virtual bool operator == (const ClientInformationList &obj) const;
virtual bool operator != (const ClientInformationList &obj) const;
virtual const std::string TypeName() const;
virtual bool CopyAttributes(const AttributeGroup *);
virtual AttributeSubject *CreateCompatible(const std::string &) const;
virtual AttributeSubject *NewInstance(bool) const;
// Property selection methods
virtual void SelectAll();
void SelectClients();
// Property setting methods
// Property getting methods
const AttributeGroupVector &GetClients() const;
AttributeGroupVector &GetClients();
// Attributegroup convenience methods
void AddClientInformation(const ClientInformation &);
void ClearClientInformations();
void RemoveClientInformation(int i);
int GetNumClientInformations() const;
ClientInformation &GetClientInformation(int i);
const ClientInformation &GetClientInformation(int i) const;
ClientInformation &operator [] (int i);
const ClientInformation &operator [] (int i) const;
// Keyframing methods
virtual std::string GetFieldName(int index) const;
virtual AttributeGroup::FieldType GetFieldType(int index) const;
virtual std::string GetFieldTypeName(int index) const;
virtual bool FieldsEqual(int index, const AttributeGroup *rhs) const;
protected:
AttributeGroup *CreateSubAttributeGroup(int index);
private:
AttributeGroupVector clients;
};
#endif