GRE::SYSTEM Class Reference

GRE "system" container object. More...

#include <gre/system.h>

Inheritance diagram for GRE::SYSTEM:
Inheritance graph
[legend]

List of all members.

Public Types

enum  AUTOOPEN { AUTOOPEN_None, AUTOOPEN_Layout, AUTOOPEN_Group, AUTOOPEN_Layer }

Static Public Member Functions

static GRE::GROUPGetActiveGroup ()
static GRE::LAYERGetActiveLayer ()
static GRE::LAYOUTGetActiveLayout ()
static GRE::VIEWGetActiveView ()
static GRE::VIEWABLEGetActiveViewable ()
static AUTOOPEN GetAutoOpenList (MDLGPARENT dlgparent, const SIMPLE_ARRAY< const char * > &cmdparms, RVC::OBJITEMLIST &ObjItemList)
static GRE::GROUPGetFirstGroup ()
static GRE::LAYOUTGetFirstLayout ()
static GRE::VIEWGetFirstView ()
static const char * GetGlobalIniGroup ()
static MITHREAD::CRITICALSECTIONGetGroupCriticalSection ()
static GRE::GROUPGetLastGroup ()
static GRE::LAYOUTGetLastLayout ()
static MITHREAD::CRITICALSECTIONGetLayoutCriticalSection ()
static MILOGGetLog ()
static SYSTEMGetRef ()
static bool GetReturnSerialReadErr ()
static void * GetRgnMgrHandle ()
static MITHREAD::POOLGetThreadPoolWeb ()
static MITHREAD::CRITICALSECTIONGetViewCriticalSection ()
static bool HasDoneWarningGeoMixed ()
static bool HasOwnCustomization ()
static void Init ()
static void InitX ()
static bool IsMultiThreaded ()
static void RegisterLayoutLayerTypes ()
static void SetActiveView (GRE::VIEW *view)
static void SetActiveViewable (GRE::VIEWABLE *viewable)
static void SetDoneWarningGeoMixed (bool set=true)
static void SetFirstGroup (GRE::GROUP *group)
static void SetFirstLayout (GRE::LAYOUT *layout)
static void SetFirstView (GRE::VIEW *view)
static void SetGlobalIniGroup (const char *IniGroup)
static void SetLastGroup (GRE::GROUP *group)
static void SetLastLayout (GRE::LAYOUT *layout)
static void SetLogOwnFile (bool LogOwnFile=true)
static void SetMultiThreaded ()
static void SetReturnSerialReadErr (bool set=true)
static void Stop ()
static void StopX ()
static GRE::CTRL_TREEVIEWTreeViewGetPtr ()
static void TreeViewSetPtr (GRE::CTRL_TREEVIEW *pTreeView)

Detailed Description

GRE "system" container object.

A single instance of this object is automatically created by the GRE system. This object is used as an implied container for all other top-level GRE (usually GRE::VIEWABLE) objects. This provides a convenient place to attach callbacks where notification is desired for all layouts and top-level groups.


Member Enumeration Documentation

Enumerator:
AUTOOPEN_None 
AUTOOPEN_Layout 
AUTOOPEN_Group 
AUTOOPEN_Layer 

Member Function Documentation

static GRE::GROUP* GRE::SYSTEM::GetActiveGroup (  )  [static]

Get active group based on type of active 'viewable'.

Returns:
Pointer to active group, NULL if none.
static GRE::LAYER* GRE::SYSTEM::GetActiveLayer (  )  [static]

Get active layer based on active viewable/group.

Returns:
Pointer to active layer, NULL if none.
static GRE::LAYOUT* GRE::SYSTEM::GetActiveLayout (  )  [static]

Get active layout.

Returns:
Pointer to active layout, NULL if active viewable is not a layout.
static GRE::VIEW* GRE::SYSTEM::GetActiveView (  )  [inline, static]

Get active view.

static GRE::VIEWABLE* GRE::SYSTEM::GetActiveViewable (  )  [inline, static]

Get active viewable.

static AUTOOPEN GRE::SYSTEM::GetAutoOpenList ( MDLGPARENT  dlgparent,
const SIMPLE_ARRAY< const char * > &  cmdparms,
RVC::OBJITEMLIST ObjItemList 
) [static]

Get list of objects to auto-open via command line.

Returns:
Type of auto-open to be performed.
Parameters:
dlgparent Parent for dialog if need to prompt user for anything
cmdparms Command-line parameters
ObjItemList Object item list returned
static GRE::GROUP* GRE::SYSTEM::GetFirstGroup (  )  [inline, static]

Get reference to the first 'standalone' group To access this data you should get a lock on the group critical section.

static GRE::LAYOUT* GRE::SYSTEM::GetFirstLayout (  )  [inline, static]

Get first layout in GRE system.

To access this data you should get a lock on the layout critical section

static GRE::VIEW* GRE::SYSTEM::GetFirstView (  )  [inline, static]

Get first view in GRE system.

To access this data you should get a lock on the layout critical section

static const char* GRE::SYSTEM::GetGlobalIniGroup (  )  [inline, static]

Get global INI group for use when saving/restoring global settings.

Note return value will be NULL if for this process only.

static MITHREAD::CRITICALSECTION& GRE::SYSTEM::GetGroupCriticalSection (  )  [inline, static]

Get reference to the 'standalone' group list critical section.

static GRE::GROUP* GRE::SYSTEM::GetLastGroup (  )  [inline, static]

Get reference to the last 'standalone' group To access this data you should get a lock on the group critical section.

static GRE::LAYOUT* GRE::SYSTEM::GetLastLayout (  )  [inline, static]

Get last layout in GRE system.

To access this data you should get a lock on the layout critical section

static MITHREAD::CRITICALSECTION& GRE::SYSTEM::GetLayoutCriticalSection (  )  [inline, static]

Get reference to the layout list critical section.

static MILOG& GRE::SYSTEM::GetLog (  )  [static]

Get log reference.

static SYSTEM& GRE::SYSTEM::GetRef (  )  [static]

Get reference to the single GRE::SYSTEM instance.

static bool GRE::SYSTEM::GetReturnSerialReadErr (  )  [inline, static]

Determine whether to return or continue on serial read error.

static void* GRE::SYSTEM::GetRgnMgrHandle (  )  [inline, static]

Get "handle" for shared "region manager".

This method is only available when compiling for X.

static MITHREAD::POOL& GRE::SYSTEM::GetThreadPoolWeb (  )  [inline, static]

Get thread pool for running background web jobs.

static MITHREAD::CRITICALSECTION& GRE::SYSTEM::GetViewCriticalSection (  )  [inline, static]

Get reference to the view list critical section.

static bool GRE::SYSTEM::HasDoneWarningGeoMixed (  )  [inline, static]

Check if have displayed warning about mixing georef/ungeoref layers.

static bool GRE::SYSTEM::HasOwnCustomization (  )  [inline, static]

Check if process set to have own customization settings.

static void GRE::SYSTEM::Init (  )  [static]

Initialize GRE system for non-interactive use.

This will automatically register the standard geospatial layer types. At program exit, GRE::SYSTEM::Stop() should be called for proper cleanup.

static void GRE::SYSTEM::InitX (  )  [static]

Initialize GRE system for interactive use in X Windows.

This will automatically register the standard geospatial layer types. At program exit, GRE::SYSTEM::StopX() should be called for proper cleanup. This method is only available when compiling for X.

static bool GRE::SYSTEM::IsMultiThreaded (  )  [inline, static]

Determine if setup for multithreaded processing.

static void GRE::SYSTEM::RegisterLayoutLayerTypes (  )  [static]

Register layout-specific layer types (text, scalebar, legend).

By default only the standard geospatial layer are registered.

static void GRE::SYSTEM::SetActiveView ( GRE::VIEW view  )  [static]

Set active view.

Will also set active viewable to view's object if view is not NULL.

Parameters:
view View to set
static void GRE::SYSTEM::SetActiveViewable ( GRE::VIEWABLE viewable  )  [static]

Set active viewable.

Will set active view to NULL if viewable is NULL or if active view not for viewable.

Parameters:
viewable Viewable to set
static void GRE::SYSTEM::SetDoneWarningGeoMixed ( bool  set = true  )  [inline, static]

Set whether have displayed warning about mixing georef/ungeoref layers.

Normally a warning dialog is displayed the first time a user attempts to place both georeferenced and non-georeferenced spatial objects in the same GRE::GROUP. In some processes, such as georeference editing, this is necessary, so this method is provided to avoid the unwanted warning dialog.

static void GRE::SYSTEM::SetFirstGroup ( GRE::GROUP group  )  [inline, static]

Set reference to the first 'standalone' group To access this data you should get a lock on the group critical section.

static void GRE::SYSTEM::SetFirstLayout ( GRE::LAYOUT layout  )  [inline, static]

Set reference to the first layout To access this data you should get a lock on the layout critical section.

static void GRE::SYSTEM::SetFirstView ( GRE::VIEW view  )  [inline, static]

Set first view in GRE system.

To access this data you should get a lock on the layout critical section

static void GRE::SYSTEM::SetGlobalIniGroup ( const char *  IniGroup  )  [static]

Set global INI group for use when saving/restoring global settings.

By default, the INI group will be "display-common".

Parameters:
IniGroup INI group name, NULL to use process name
static void GRE::SYSTEM::SetLastGroup ( GRE::GROUP group  )  [inline, static]

Set reference to the last 'standalone' group To access this data you should get a lock on the group critical section.

static void GRE::SYSTEM::SetLastLayout ( GRE::LAYOUT layout  )  [inline, static]

Set reference to the last layout To access this data you should get a lock on the layout critical section.

static void GRE::SYSTEM::SetLogOwnFile ( bool  LogOwnFile = true  )  [static]

Set log (if extended logging is on) to use process instance specific file.

By default logging is to shared session log file.

static void GRE::SYSTEM::SetMultiThreaded (  )  [static]

Setup for multithreaded processing.

Must be done at beginning of process after initialization.

static void GRE::SYSTEM::SetReturnSerialReadErr ( bool  set = true  )  [inline, static]

Set whether to return serial read error or continue.

static void GRE::SYSTEM::Stop (  )  [static]

Terminate GRE system at program exit.

This method should only be called if GRE::SYSTEM::Init() was used.

static void GRE::SYSTEM::StopX (  )  [static]

Terminate GRE system at program exit.

This method should only be called if GRE::SYSTEM::InitX() was used.

static GRE::CTRL_TREEVIEW* GRE::SYSTEM::TreeViewGetPtr (  )  [inline, static]

Get TreeView pointer.

static void GRE::SYSTEM::TreeViewSetPtr ( GRE::CTRL_TREEVIEW pTreeView  )  [inline, static]

Set TreeView pointer.

Used by GRE CTRL_TREEVIEW implementation, should not be called directly.


The documentation for this class was generated from the following file:

Generated on Sun Oct 7 21:34:50 2012 for TNTsdk 2012 by  doxygen 1.6.1