Aaron:
"Groups" are a good deal more complicated than just a different naming
convention. It is true that group names are not restricted like normal lines to
have one of the line type letters at the start ("L", "R", "T",
etc...).
"Group" Lines are created using a call such as:
CreateSymb_DB( Data, Line, DB_SYMB_LINE, DB_OWN_USER,
DB_CATEGORY_LINE_GROUP);
You
must call such functions as the following to set up the channels to see inside a
group (taken from db.gxh):
//
Group Line methods. // //
Associate_DB Associate a channel
with a group line. // AssociateAll_DB Associate
all channel with a group line. // AddAssociatedLoad_DB Add this channel to
the auto-load feature of the group. //
iIsAssociated_DB Check to see if a channel is associated
with group. // SetGroupClass_DB Set the Class name
for a group line. // GetGroupClass_DB Get the Class
name for a group line.
To
determine if a line is a group line, call the following:
//
iLineCategory_DB Returns the category (group, line) of a
line.
and
compare the result against the definitions:
#define DB_CATEGORY_LINE_FLIGHT 100 #define
DB_CATEGORY_LINE_GROUP 200
Group
lines and methods are somewhat "use at your own risk". In future development we
are more likely to store different types of data (which require different sets
of channels) to individual databases, rather than to creating different
groups for different data in the same database.
Stephen Cheesman
_______________ Geosoft Inc. Stephen
Cheesman [EMAIL PROTECTED] (905) 315-8207
Software and
services for effective earth science decision-making. Free Oasis montaj
interface now available at http://www.geosoft.com
Mr. Cheeseman,
Thank you for the prompt reply. I should
have tried one more thing before sending the email to GXNET. Soon after
sending the email, I tried locking and the database before the
FILE_COMMIT command, and it appears to have solved my problem, at least for
now. Maybe this is a change that showed up in the recent releases as you
mentioned. My GX has occasionally acted up in recent times but I've always
been able to solve the problems.
If I might ask a question though. I'm not even
familiar with "groups". I quickly did some investigating and it seems to
me that the only difference between a group and a line is the label; group
names are of the format #### ,
where ### is an alphanumeric name, and line labels are in the format
L###:#
In this case, I see a solution, albiet a
brute-force kind of solution, by changing the label into a srting, comparing
the string to a template to see if it conforms to the line format or the group
format, and then either processing or skipping the current line/group. Am I
right in my understanding of groups?
Aaron
----- Original Message -----
Sent: Tuesday, December 11, 2001 10:37
AM
Subject: RE: [gxnet]: Loading a
channel
Aaron:
Here at Geosoft I've been battling with the loading/unloading of
channels and data profiles for the last couple of releases. The problems
began when we started to combine regular "Flight" lines with "group"
lines in the same database (e.g. for the UX-Detect system). Group lines
display only a subset of the full set of channels; only those that have been
specially "associated" with the group.
Users generally would like to have a different set of channels loaded
in the "Line" data than in the "Group" data. The problem is compounded when
you start having to worry about all the data profile parameters plotted
below the data. All of this information must be saved/restored when lines
are changed, or data is comitted, etc. etc.
Needless to say, the implementation of this extra layer of complexity
resulted in a number of small "glitches" such as that you found below. Other
problems were encountered using such methods as the "Save database as..."
command.
I
took another run at this problem for v5.1.2, due out shortly. Let me know if
the problems you experience continue once you try the new
release.
Stephen Cheesman
_______________ Geosoft Inc. Stephen
Cheesman [EMAIL PROTECTED] (905) 315-8207
Software
and services for effective earth science decision-making. Free Oasis
montaj interface now available at http://www.geosoft.com
Hi all,
Awhile ago, I developed a loadchan GX that enabled me to go through a
series of databases in batch mode and load up to 20 channels. It
worked fine for a long time, but today I started to have problems with it,
and I can't seem to solve the problem. When the GX is working, how it
should work is I enter my databases and the channels which I wish to load
through a dialogue box. The gx loads the database, if the option is set it
unloads all the channels in the database, loads the desired channels,
prompts the user to save(ID_FILE_COMMIT conmmand), and then proceeds to
the next database. After completion of the GX, the appropriate channels
are loaded in the database.
What's happening now is, the GX loads the database, unloads all
channels(according to if iErase=1), loads the desired channels, prompts
the user to save the database(at this point, everything looks fine), and
then proceeds to the next database. Everything still looks fine upon
completion of the GX, but when I go back and load the database, The
channels I wanted loaded are loaded, but so are all the other channels. I
don't understand what's going on becuase at the point where the GX gives
the prompt to save, the appropriate channels are loaded into the
database.
Here is the section of the GX that loads the desired channels and
saves the database:
// --- Get the Database --- EData1 =
Current_EDB(); SetInteractive_SYS(0); // Turns interactive
mode off for all calls
to //
iRunGX_SYS.
if (iErase == 1)
UnLoadAllChans_EDB(EData1);
LoadChan_EDB(EData1,
sChan1); LoadChan_EDB(EData1,
sChan2); LoadChan_EDB(EData1,
sChan3);
//
etc.... up to 20 channels can be
loaded.
DoCommand_SYS("[ID] ID_FILE_COMMIT");
UnLoad_EDB(sDbin); //Close the edited
database. }
SetInteractive_SYS(0); //Reset interactive mode to
1 - on
}
To add to the mystery, I've done a few tests and if I add a
Abort_SYS("EXIT"); command before the DoCommand_SYS(function), and
manually click the close button in the upper right hand corner of the
database and choose 'yes' to save, when I subsequently open the database
the appropriate channels are loaded.
If any one has any ideas of what's happening here, I would really
appreciate the help
Aaron Balasch Sky Hunter Technologies
Inc. Suite 101, 1725 10th Avenue S.W. Calgary, Alberta T3C
0K1 email: [EMAIL PROTECTED] phone:
403-228-2175 fax:
403-244-7955
|