TAO_PSDL_Interpreter Class Reference

#include <PSDL_Interpreter.h>

Collaboration diagram for TAO_PSDL_Interpreter:

Collaboration graph
[legend]
List of all members.

Protected Member Functions

 TAO_PSDL_Interpreter (void)
 ~TAO_PSDL_Interpreter (void)
int build_tree (const char *constraints)

Static Protected Member Functions

int is_empty_string (const char *str)

Protected Attributes

TAO_PSDL_Noderoot_

Static Private Attributes

TAO_SYNCH_MUTEX parserMutex__

Constructor & Destructor Documentation

TAO_PSDL_Interpreter::TAO_PSDL_Interpreter void   )  [protected]
 

Definition at line 12 of file PSDL_Interpreter.cpp.

00013   : root_ (0)
00014 {
00015 }

TAO_PSDL_Interpreter::~TAO_PSDL_Interpreter void   )  [protected]
 

Definition at line 17 of file PSDL_Interpreter.cpp.

00018 {
00019   delete this->root_;
00020 }


Member Function Documentation

int TAO_PSDL_Interpreter::build_tree const char *  constraints  )  [protected]
 

Definition at line 23 of file PSDL_Interpreter.cpp.

References ACE_GUARD_RETURN, parserMutex__, TAO_Lex_String_Input::reset(), TAO_PSDL_yyparse(), TAO_SYNCH_MUTEX, and yyval.

00024 {
00025   ACE_GUARD_RETURN (TAO_SYNCH_MUTEX,
00026                     guard,
00027                     TAO_PSDL_Interpreter::parserMutex__,
00028                     -1);
00029 
00030   TAO_Lex_String_Input::reset ((char*)nodes);
00031 
00032   yyval = 0;
00033   void *result_ptr = 0;
00034   int return_value = TAO_PSDL_yyparse (result_ptr);
00035 
00036   if (return_value == 0 && yyval != 0)
00037     {
00038       this->root_ = yyval;
00039     }
00040   else
00041     {
00042       this->root_ = 0;
00043     }
00044 
00045   return return_value;
00046 }

int TAO_PSDL_Interpreter::is_empty_string const char *  str  )  [static, protected]
 

Definition at line 49 of file PSDL_Interpreter.cpp.

00050 {
00051   int return_value = 0;
00052 
00053   if (str != 0)
00054     {
00055       int i = 0;
00056 
00057       while (str[i] != '\0')
00058         {
00059           if (str[i] != ' ')
00060             {
00061               break;
00062             }
00063 
00064           i++;
00065         }
00066 
00067       if (str[i] == '\0')
00068         {
00069           return_value = 1;
00070         }
00071     }
00072 
00073   return return_value;
00074 }


Member Data Documentation

TAO_SYNCH_MUTEX TAO_PSDL_Interpreter::parserMutex__ [static, private]
 

Definition at line 10 of file PSDL_Interpreter.cpp.

Referenced by build_tree().

TAO_PSDL_Node* TAO_PSDL_Interpreter::root_ [protected]
 

Definition at line 52 of file PSDL_Interpreter.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 14:09:16 2006 for TAO_PSS by doxygen 1.3.6