Conceptual Speech Commander and CLUE Reference Guide
Table of Contents
Built-in Conceptual Speech Commander Constructs
ADDROLEFILLERPAIR
Parameter(s):
Predicate or predicate’s address
Role name to be added
Filler to be added
Return: Nothing.
ADDROLEFILLERPAIR adds a new role-filler pair to an already
existing predicate passed as the first parameter. It may sometimes be useful to
have the same role repeated with different fillers within a predicate. In these
cases, use ADDROLEFILLERPAIR instead of SETROLEFILLERPAIR so that the resulting
predicate has different role-fillers with the same role name instead of
overwriting a unique role-filler pair with the role’s name.
See also: SETROLEFILLERPAIR,
WORKINGPREDICATE, WORKINGPREDICATEADDRESS.
BUILDPREDICATEFROMCONTEXT
Parameter(s):
<LASTOBJECT> or <ALLOBJECTS>
Return: The Predicate holding the last Object of Knowledge or
all Objects of Knowledge.
Use BUILDPREDICATEFROMCONTEXT to generate an Object based on
context for a SENTENCE. The Object may be an AND predicate of all previous
Objects if passed ALLOBJECTS as the first parameter, or simply the last Object
if passed LASTOBJECT as the first parameter.
In a SENTENCE like "Call John and tell him I’ll be
late", the execution of the PBS of him (PRONOUN) would result to
<PP[CLASS:HUMAN][ID:JOHN]> since ‘him’ was replaced with the last Object
"John" through the BUILDPREDICATEFROMCONTEXT call and the last Object was
‘John’.
CLEARCONSTRUCT
Parameter(s):
Construct name
Return: Nothing.
CLEARCONSTRUCT clears the construct that was passed as a
parameter and the memory used by the construct’s content is freed.
See also: SETCONSTRUCT, SETEVALCONSTRUCT.
CLONENODEANALYSISRESULT
Parameter(s):
Predicate
Return: Nothing.
CLONENODEANALYSISRESULT stores the Predicate calculated from
the parsing of the first parameter as the result of the parsing for the current
node. Conceptual Speech Commander then assumes that the node for which
CLONENODEANALYSISRESULT was called on has already been calculated (overwriting
the PBS associated with it) and that its Predicate resulting from the
calculation was the first parameter.
DEBUG
Parameter(s):
<ON> or <OFF>
Return: Nothing.
DEBUG(ON) starts generating FEEDBACK outputs in Conceptual
Speech Commander Console for IF and IFNOT constructs while showing each of
their parameters and the testing results. DEBUG(OFF) toggles back to the
default of not generating FEEDBACK for IF and IFNOT constructs.
See also: FEEDBACK.
ELSE
Parameter(s): None
Return: Nothing.
ELSE is used in pair with IF or IFNOT constructs in order to
branch into their respective inverted result.
See also: IF, IFNOT, ENDIF, DEBUG.
ENDIF
Parameter(s): None
Return: Nothing.
ENDIF terminates the branching generated by an IF, IFNOT
and/or ELSE construct.
See also: IF, IFNOT, ENDIF, DEBUG.
EXCLUDESYNTACTICSEQUENCE
Parameter(s):
Spelling sequence to exclude from possible spoken words
list.
Return: Nothing.
EXCLUDESYNTACTICSEQUENCE notifies the Syntactic Analysis
process to exclude some word sequences that are often calculated and may
decrease performance if not excluded. For example, in the context of an airline
response system, the word ‘at’ may often be mis-recognized to ‘AA 8’ where the
company ‘AA’ would be handled. Provided that no flight ‘AA 8’ exist, it may be
a good idea to call EXCLUDESYNTACTICSEQUENCE with the first parameter <AA
8>.
EXTRACTFILLER
Parameter(s):
The Predicate from which to extract a filler.
The Predicate with a construct-filler used to specify
which filler to extract.
Return: Nothing.
EXTRACTFILLER sets the construct values of the second
parameter to its corresponding content from the first parameter if possible, or
NULL if not.
See also: ISEQUAL, HASPREDICATE, HASROLE, SEARCHPREDICATE.
FINDNODE
Parameter(s):
Direction: BACKWARDSAMENODE, PREVIOUSSAMENODE,
NEXTSAMENODE, FORWARDSAMENODE, BACKWARDOUTOFNODE, PREVIOUSOUTOFNODE,
NEXTOUTOFNODE, FORWARDOUTOFNODE, UPONLY or SAMENODE.
Depth: SAMENODELEVEL, SAMENODELEVELORLOWER,
LOWERNODELEVEL, SAMENODELEVELORUPPER, UPPERNODELEVEL, NOLEVELCONSTRAINT or
CHILDNODE.
Optional node description (which describes spelling
and/or PARTOFSPEECH).
Return: OK if the current node was changed, NULL otherwise.
Use FINDNODE to run through a Syntactic Hierarchy while
stating direction and depth constraints. FINDNODE also accepts a node
description constraint in the third parameter.
See also: NEXTCHILDLESSNODE, NEXTNODE, PREVIOUSCHILDLESSNODE,
PREVIOUSNODE, PARENTNODE.
GETASSOCIATEDVALUE
Parameter(s): None
Return: Associated value.
GETASSOCIATEDVALUE returns the associated value (which can
be set in Dictionary Explorer) associated to the current node.
See also: GETSPELLING, PARTOFSPEECH.
GETCURRENTNODE
Parameter(s): None
Return: Current node’s address.
GETCURRENTNODE returns the address of the current node so
that it can be restored later on with a SETCURRENTNODE construct. Make sure to
affect the construct referring to GETCURRENTNODE with SETEVALCONSTRUCT (so that
it is parsed upon assignation) instead of SETCONSTRUCT.
See also: SETCURRENTNODE.
GETSPELLING
Parameter(s): None
Return: Spelling of current node.
GETSPELLING returns the spelling of the current node.
See also: GETASSOCIATEDVALUE, PARTOFSPEECH.
HASROLE
Parameter(s):
Predicate.
Role name to look for in Predicate passed as first
parameter.
Return: <OK> if the role name passed as second parameter
is in the Predicate that was passed as the first parameter, NULL otherwise.
HASROLE looks for a given role name passed in the second
parameter in the Predicate passed in the first parameter. Note that it is not
looking in Predicate associated with fillers of the first parameter for the
role name.
See also: ISEQUAL, HASPREDICATE, EXTRACTFILLER,
SEARCHPREDICATE.
HASPREDICATE
Parameter(s):
Predicate to look into.
Predicate for which to search.
Return: <OK> if Predicate passed in parameter 2 was found
in Predicate passed in parameter 1.
HASPREDICATE looks for a Predicate (passed in the second
parameter) in another Predicate (passed as the first parameter) and every
Predicate that are fillers of the Predicate passed as first parameter. Note
that if the second parameter has a construct as a filler, the construct content
will be replaced upon completion of this construct.
See also: ISEQUAL, EXTRACTFILLER, SEARCHPREDICATE, HASROLE.
IF
Parameter(s):
Content 1 to compare.
Content 2 to compare.
Return: Nothing.
IF is used in pair with ELSE and ENDIF constructs to branch
into scripting content if both parameters are the same.
See also: IFNOT, ELSE, ENDIF, DEBUG.
IFNOT
Parameter(s):
Content 1 to compare.
Content 2 to compare.
Return: Nothing.
IFNOT is used in pair with ELSE and ENDIF constructs in
order to branch into scripting content if both parameters are not the same.
See also: IF, ELSE, ENDIF, DEBUG.
INDEXINPARENTNODE
Parameter(s): None
Return: Position in the parent’s node.
INDEXINPARENTNODE returns the current node’s position
(index) under its respective parent node.
See also: NODECOUNTUNDERPARENTNODE.
INSERTSCRIPT
Parameter(s):
Spelling of word to insert Predicate Builder Script.
Part of speech of word to insert Predicate Builder
Script.
Predicate Builder Script name to insert.
Return: Predicate Builder Script content to insert.
Use INSERTSCRIPT to refer to an already existent Predicate
Builder Script content. This is an efficient way of creating synonyms.
ISEQUAL
Parameter(s):
First Predicate to compare.
Second Predicate to compare.
Return: <OK> if Predicate passed in parameter 2 is the
same as the Predicate passed in parameter 1, NULL otherwise.
Use ISEQUAL to verify if two Predicates are equal (while
following Predicate comparison rules). Note that if the second parameter has a
construct as a filler, the construct content will be replaced upon completion
of this construct.
See also: HASPREDICATE, EXTRACTFILLER, SEARCHPREDICATE,
HASROLE.
LINEFEED
Parameter(s): None
Return: Carriage Return character in FEEDBACK.
Because of Predicate Builder Script’s reformatting of
scripts, inserting line-feeds in FEEDBACK calls has to be done through a
LINEFEED call.
See also: FEEDBACK.
MENUITEM
Parameter(s):
Menu name
Construct name to call when menu is invoked
Return: None.
MENUITEM adds a menu in the Modules menu in Conceptual
Speech Commander Console so that the construct passed in parameter 2 can be
called when the user invokes the menu item. The MENUITEM construct works
exclusively from the MENUSETUP construct of a module.
See also: CS_AddMenu.
NEXTCHILDLESSNODE
Parameter(s): None
Return: <OK> if current node changed, NULL otherwise.
NEXTCHILDLESSNODE steps forward from the current node and
looks for a node that has no child.
See also: NEXTNODE, PREVIOUSCHILDLESSNODE, PREVIOUSNODE,
FINDNODE, PARENTNODE.
NEXTNODE
Parameter(s): None
Return: <OK> if current node changed, NULL otherwise.
NEXTNODE steps forward from the current node.
See also: NEXTCHILDLESSNODE, PREVIOUSCHILDLESSNODE,
PREVIOUSNODE, FINDNODE, PARENTNODE.
NODEANALYZED
Parameter(s): None
Return: Nothing.
NODEANALYZED identifies the current node as analyzed so that
no further conceptual analysis is performed on it.
See also: PARSENODE.
NODECOUNTUNDERPARENTNODE
Parameter(s): None
Return: The number of nodes under the current node’s parent.
See also: INDEXINPARENTNODE.
PARENTNODE
Parameter(s): None
Return: <OK> if current node changed, NULL otherwise.
PARENTNODE sets the current node to its corresponding
parent.
See also: NEXTNODE, NEXTCHILDLESSNODE, PREVIOUSCHILDLESSNODE,
PREVIOUSNODE, FINDNODE.
PARSENODE
Parameter(s): None
Return: Predicate resulting from the parse.
PARSENODE parses the current node and returns its calculated
Predicate.
See also: NODEANALYZED.
PARTOFSPEECH
Parameter(s): None
Return: Part of speech of the current node.
Use PARTOFSPEECH to get the Part of Speech of the current
node.
See also: GETSPELLING, GETASSOCIATEDVALUE.
PARTOFSPEECHOFPARENTNODE
Parameter(s): None
Return: Part of speech of parent of current node.
Use PARTOFSPEECHOFPARENTNODE to get the Part of Speech of
the parent of the current node.
See also: PARTOFSPEECH, GETASSOCIATEDVALUE, NEXTNODE,
NEXTCHILDLESSNODE, PREVIOUSCHILDLESSNODE, PREVIOUSNODE, FINDNODE, PARENTNODE.
PRESENT_TIME
Parameter(s): None
Return: Time string.
Use PRESENT_TIME to get the time-stamp of the start of the
current conceptual analysis.
PREVIOUSCHILDLESSNODE
Parameter(s): None
Return: <OK> if current node changed, NULL otherwise.
PREVIOUSCHILDLESSNODE steps back from the current node and
looks for a node that has no child.
See also: NEXTNODE, NEXTCHILDLESSNODE, PREVIOUSNODE, FINDNODE,
PARENTNODE.
PREVIOUSNODE
Parameter(s): None
Return: <OK> if current node changed, NULL otherwise.
PREVIOUSNODE steps back from the current node.
See also: NEXTCHILDLESSNODE, PREVIOUSCHILDLESSNODE, NEXTNODE,
FINDNODE, PARENTNODE.
REGISTER
Parameter(s):
Register type: CDPOSTANALYSIS.
Construct name.
Return: Nothing.
Call REGISTER in the module’s register message in order to
register a post-analysis construct to call.
REJECTCONCEPTUALANALYSIS
Parameter(s): None
Return: Nothing.
Call REJECTCONCEPTUALANALYSIS to reject the current
conceptual analysis.
See also: RESERVECONCEPTUALANALYSIS.
REPLACEFILLER
Parameter(s):
Predicate from which to search.
Predicate for which to search.
Filler to set if successful.
Return: <OK> if replaced was made, NULL otherwise.
REPLACEFILLER replaces the last filler specified in the
second parameter found in the first parameter with the content specified in the
third parameter.
RESERVECONCEPTUALANALYSIS
Parameter(s): None
Return: Nothing.
Call RESERVECONCEPTUALANALYSIS to reserve the current’s
conceptual analysis if valid. If conceptual analysis terminates without any
conceptual analysis being reserved, the conceptual analysis that has the least
error (error, warning or no error) and that was reserved will be selected as
the successful analysis.
See also: REJECTCONCEPTUALANALYSIS.
SEARCHPREDICATE
Parameter(s):
The Predicate from which to search.
The Predicate to search.
Return: <OK> if existent, NULL otherwise.
Use SEARCHPREDICATE to look for the existence of a Predicate
within a second Predicate.
SETANALYSISRESULT
Parameter(s):
The Predicate to set.
Return: Nothing.
Use SETANALYSISRESULT to set the result of the current
node’s analysis to a calculated Predicate.
See also: NODEANALYZED, CLONENODEANALYSISRESULT.
SETCONSTRUCT
Parameter(s):
Construct name.
Return: Nothing.
Use SETCONSTRUCT to set the content of a construct. Note
that the construct content follows this construct in a block between the
character ‘{‘ and ‘}’. Also, SETCONSTRUCT does not parse the content specified
immediately. If immediate parsing is desired, call SETEVALCONSTRUCT instead.
See also: SETEVALCONSTRUCT, CLEARCONSTRUCT.
SETCURRENTNODE
Parameter(s):
Node address obtained with GETCURRENTNODE construct.
Return: Nothing.
SETCURRENTNODE changes the current node to the node that was
returned in the GETCURRENTNODE construct.
See also: GETSPELLING, PARTOFSPEECH, SETCONSTRUCT,
SETEVALCONSTRUCT, GETCURRENTNODE.
SETEVALCONSTRUCT
Parameter(s):
Construct name.
Return: Nothing.
Use SETEVALCONSTRUCT to set the content of a construct. Note
that the construct content follows this construct in a block between the
character ‘{‘ and ‘}’. Also, SETEVALCONSTRUCT parses the content specified
immediately. If immediate parsing is not desired, call SETCONSTRUCT instead.
See also: SETCONSTRUCT, CLEARCONSTRUCT.
SETROLEFILLERPAIR
Parameter(s):
Predicate or predicate’s address
Role name to be set
Filler to be set
Return: Nothing.
SETROLEFILLERPAIR sets a new or already existent role’s
associated filler to the third parameter passed. SETROLEFILLERPAIR will keep
only one role specified in the second parameter. If it is desired to keep a
repeated role with different fillers,
use ADDROLEFILLERPAIR instead of SETROLEFILLERPAIR.
See also: ADDROLEFILLERPAIR, WORKINGPREDICATE, WORKINGPREDICATEADDRESS.
SETSTARTINGWORKINGPREDICATE
Parameter(s):
Predicate to set as starting working predicate
Return: Nothing.
Use SETSTARTINGWORKINGPREDICATE to override the starting
working Predicate.
See also: WORKINGPREDICATE, WORKINGPREDICATEADDRESS.
SETWORKINGPREDICATE
Parameter(s):
Predicate to set.
Return: Nothing.
Use SETWORKINGPREDICATE to change the working Predicate.
See also: WORKINGPREDICATE, WORKINGPREDICATEADDRESS.
WORKINGPREDICATE
Parameter(s): None
Return: The Working Predicate
Use WORKINGPREDICATE to get the working Predicate.
See also: SETWORKINGPREDICATE, WORKINGPREDICATEADDRESS.
WORKINGPREDICATEADDRESS
Parameter(s): None
Return: The Working Predicate address
Use WORKINGPREDICATEADDRESS to get the working Predicate’s
address in memory.
See also: SETWORKINGPREDICATE, WORKINGPREDICATE.
Conceptual Speech Commander C/C++ SDK API calls
CS_AddMenu
Interface: void CS_AddMenu( const char* name,
MenuInvokedCallback proc );
CS_AddMenu adds a menu in the Modules menu in
Conceptual Speech Commander Console so that the construct passed in parameter 2
can be called when the user invokes the menu item.
See also: MENUITEM.
CS_AppendToBuffer
Interface: void CS_AppendToBuffer( const char* toAppend,
char*& pBuffer, size_t& curSize );
CS_AppendToBuffer is to be used with the
EvaluateProc function from Interaction modules in order to increase the buffer
passed with more content.
See also: CS_SetBuffer.
CS_BuildConstructParmName
Interface: char* CS_BuildConstructParmName( const char*
construct, int parmIndex, char buffer[], bool addPrefixAndSuffix );
CS_BuildConstructParmName builds a parameter name
provided the construct name and its index. The addPrefixAndSuffix boolean will
signal to add the tokenizer prefix and suffix to the generated construct
parameter name if true.
CS_BuildPredicate
Interface: PredicatePtr CS_BuildPredicate( char
*predicateRepresentationString );
CS_BuildPredicate builds a Predicate object
provided a Predicate representation string.
See also: CS_GetParentPredicate, CS_GetPredicate,
CS_GetPredicateRepresentationString, CS_GetPrimitive, CS_SetRoleFillerPair,
CS_SetRoleFillerPairStruct, CS_CountRoleFillerPairs, CS_GetFiller,
CS_PredicatesEqual, CS_HasPredicate, CS_PredicateUsesPBSParser,
CS_DrillDownForPredicates, CS_HasRole, CS_GoToResult, CS_GetFillerOfRole,
CS_DrillDownForFirstPredicate, CS_SetTransientInformation,
CS_ClearTransientInformation, CS_CountPredicatesInResultSet,
CS_DisposeResultSet.
CS_ClearTransientInformation
Interface: void CS_ClearTransientInformation( PredicatePtr dPredicate );
CS_ClearTransientInformation clears the transient
information previously set by CS_SetTransientInformation. Call CS_ClearTransientInformation before calling CS_GetParentPredicate.
See also: CS_GetParentPredicate, CS_SetTransientInformation.
CS_CountPredicatesInResultSet
Interface: int CS_CountPredicatesInResultSet( DrillResultSetPtr res );
CS_CountPredicatesInResultSet counts the Predicates
that were successfully detected by the CS_DrillDownForPredicates call.
See also: CS_DisposeResultSet, CS_DrillDownForPredicates,
CS_GoToResult, CS_GetPredicate.
CS_CountRoleFillerPairs
Interface: int CS_CountRoleFillerPairs( PredicatePtr dPredicate );
CS_CountRoleFillerPairs
counts the role-filler pairs in a Predicate (not including the role-filler
pairs that are part of Predicate fillers).
See also: CS_GetPrimitive.
CS_DisposeResultSet
Interface: void CS_DisposeResultSet( DrillResultSetPtr res );
CS_DisposeResultSet frees the memory occupied by
the DrillResultSetPtr that was previously allocated with a
CS_DrillDownForPredicates call.
See also: CS_DrillDownForPredicates,
CS_GoToResult, CS_GetPredicate, CS_CountPredicatesInResultSet.
CS_DrillDownForFirstPredicate
Interface: FillerContent* CS_DrillDownForFirstPredicate(
PredicatePtr dPredicate, PredicatePtr toFind );
CS_DrillDownForFirstPredicate looks for the first
Predicate as described in toFind in dPredicate or in any of the Predicate
Filler of dPredicate. If more than one FillerContent * is expected from this
call, use CS_DrillDownForPredicates instead.
See also: CS_DrillDownForPredicates, CS_GoToResult,
CS_GetPredicate, CS_CountPredicatesInResultSet, CS_DisposeResultSet.
CS_DrillDownForPredicates
Interface: DrillResultSetPtr CS_DrillDownForPredicates(
PredicatePtr dPredicate, PredicatePtr toFind );
CS_DrillDownForPredicates creates
a result set in DrillResultSetPtr which can be scanned with CS_GoToResult or
CS_GetPredicate with the help of CS_CountPredicatesInResultSet. Once done with
the result set, dispose of it with CS_DisposeResultSet.
See also: CS_DrillDownForPredicates, CS_GoToResult,
CS_GetPredicate, CS_CountPredicatesInResultSet, CS_DisposeResultSet.
CS_FeedbackCenter
Interface: void CS_FeedbackCenter( char* dString, bool underlined );
CS_FeedbackCenter generates output
in Conceptual Speech Commander Console that is centered and underlined (if the
underlined bool is set to true).
See also: CS_FeedbackString, CS_FeedbackStringNum.
CS_FeedbackString
Interface: void CS_FeedbackString( char* content );
CS_FeedbackString generates output
in Conceptual Speech Commander Console.
See also: CS_FeedbackCenter, CS_FeedbackStringNum.
CS_FeedbackStringNum
Interface: void CS_FeedbackStringNum( char* dString, unsigned long dNum );
CS_FeedbackStringNum generates
output in Conceptual Speech Commander Console with number replacement.
See also: CS_FeedbackCenter, CS_FeedbackString.
CS_Free
Interface: void CS_Free( PBSParserPtr dPBSParser, void* addr );
CS_Free frees the memory occupied
by parsing result that was generated through a CS_Parse call.
See also: CS_Parse.
CS_FreeThreadContext
Interface: void CS_FreeThreadContext();
Call CS_FreeThreadContext prior to
having a thread destroy itself so that the data related to the context can also
be destroyed.
See also: CS_InitializeThreadContext, CS_IsThreadAllowed.
CS_GetAudioProcessingModuleName
Interface: char* CS_GetAudioProcessingModuleName();
CS_GetAudioProcessingModuleName
returns the module name that is performing audio processing. The current audio
processing module can then be changed with a CS_UseAudioProcessing call.
See also: CS_UseAudioProcessing, CS_ProcessThroughAudioInput.
CS_GetBaseProperties
Interface: PropertiesPtr CS_GetBaseProperties();
CS_GetBaseProperties returns the
PropertiesPtr related to the base properties of Conceptual Speech Commander. Do
not call CS_ReleaseProperties on it.
See also: CS_GetPropertyName, CS_GetProperties,
CS_GetPropertyRawValue, CS_GetPropertyLongValue, CS_GetPropertyIntValue,
CS_GetPropertyStringValue.
CS_GetConstruct
Interface: char* CS_GetConstruct( PBSParserPtr dPBSParser,
const char* constructName, bool returnNULLAsStr );
CS_GetConstruct returns the
content of a construct with the name constructName in the parser dPBSParser. If
the construct is a global construct, the dPBSParser is irrelevant (may use
any), but if the construct is a local construct, it is important to call the
dPBSParser that holds the local construct. The returnNULLAsStr bool if true and no construct exist will
return a "NULL" string. If returnNULLAsStr bool is false and no construct exist, the call will return a NULL value.
See also: CS_SetConstruct, CS_Parse, CS_GetStaticPBSParser,
CS_NewPBSParser, CS_PBSParserDispose.
CS_GetFillerOfRole
Interface: FillerContent* CS_GetFillerOfRole( PredicatePtr
dPredicate, char* roleName );
CS_GetFillerOfRole returns the
FillerContent * of the role which name is roleName in dPredicate. Do not
dispose the returned value.
See also: CS_HasRole.
CS_GetParentPredicate
Interface: PredicatePtr CS_GetParentPredicate( PredicatePtr
dPredicate );
CS_GetParentPredicate gets the
Parent Predicate that has dPredicate as a filler in one of its role-filler
pairs.
See also: CS_SetTransientInformation,
CS_ClearTransientInformation.
CS_GetPartOfSpeech
Interface: bool CS_GetPartOfSpeech( int index, char
**partOfSpeech, int *PBSScriptCount );
Provided that CS_InspectWord was
called on a word in the dictionary, CS_GetPartOfSpeech returns the part of
speech index in partOfSpeech and how many Predicate Builder Scripts there are
associated with it (so that a call to CS_GetPredicateBuilderScript can be
made).
See also: CS_InspectWord, CS_GetPronunciation,
CS_GetPredicateBuilderScript.
CS_GetPredicate
Interface: PredicatePtr CS_GetPredicate( DrillResultSetPtr res,
int index );
CS_GetPredicate gets the Predicate
index specified in index following a CS_DrillDownForPredicates call. The
difference between CS_GetPredicate and CS_GoToResult is that constructs were
not expected in the CS_DrillDownForPredicates call that generated the
DrillResultSetPtr.
See also: CS_DrillDownForPredicates, CS_GoToResult,
CS_CountPredicatesInResultSet, CS_DisposeResultSet.
CS_GetPredicateBuilderScript
Interface: bool CS_GetPredicateBuilderScript( int
partOfSpeechIndex, int PBSScriptIndex, char **PBSScript );
CS_GetPredicateBuilderScript
returns the Predicate Builder Script content of the word that CS_InspectWord
was called on. The Predicate Builder Script content is tokenized.
See also: CS_InspectWord, CS_GetPronunciation,
CS_GetPartOfSpeech.
CS_GetPredicateRepresentationString
Interface: char* CS_GetPredicateRepresentationString(
PredicatePtr dPredicate, bool withReferences, int offset );
CS_GetPredicateRepresentationString
formats a Predicate in such a way that it becomes readable. If withReferences
is true, it will insert the Predicates addresses in the generated content.
Offset describes the amount of spaces before each line (in order to give it
some indentation, put zero as a default). Call CS_Free on it when done.
See also: CS_Free.
CS_GetPrimitive
Interface: char* CS_GetPrimitive( PredicatePtr dPredicate );
CS_GetPrimitive returns the
Primitive name of a Predicate. Do not free or modify the returned content.
See also: CS_GetParentPredicate, CS_GetPredicate,
CS_GetPredicateRepresentationString, CS_BuildPredicate, CS_SetRoleFillerPair,
CS_SetRoleFillerPairStruct, CS_CountRoleFillerPairs, CS_GetFiller,
CS_PredicatesEqual, CS_HasPredicate, CS_PredicateUsesPBSParser,
CS_DrillDownForPredicates, CS_HasRole, CS_GoToResult, CS_GetFillerOfRole,
CS_DrillDownForFirstPredicate, CS_SetTransientInformation, CS_ClearTransientInformation,
CS_CountPredicatesInResultSet, CS_DisposeResultSet.
CS_GetPronunciation
Interface: char* CS_GetPronunciation( int index );
CS_GetPronunciation returns the
pronunciation index for the word specified in the CS_InspectWord call. Call
CS_GetPronunciation while increasing index until NULL is returned (signaling
there are no more pronunciations).
See also: CS_InspectWord, CS_GetPredicateBuilderScript,
CS_GetPartOfSpeech.
CS_GetProperties
Interface: PropertiesPtr CS_GetProperties( const char *path );
CS_GetProperties loads the
properties file at the specified path. Once done with reading its content, call
CS_ReleaseProperties on it.
See also: CS_GetPropertyName, CS_GetBaseProperties,
CS_GetPropertyRawValue, CS_GetPropertyLongValue, CS_GetPropertyIntValue,
CS_GetPropertyStringValue, CS_ReleaseProperties.
CS_GetPropertyIntValue
Interface: bool CS_GetPropertyIntValue( PropertiesPtr
properties, const char *property, int *fillValue );
Call CS_GetPropertyIntValue to
retrieve an integer value with the property name property from the property
file opened with CS_GetBaseProperties or CS_GetBaseProperties. Will return true
if it succeeded, false otherwise.
See also: CS_GetPropertyName, CS_GetBaseProperties,
CS_GetPropertyRawValue, CS_GetPropertyLongValue, CS_GetProperties,
CS_GetPropertyStringValue, CS_ReleaseProperties.
CS_GetPropertyLongValue
Interface: bool CS_GetPropertyLongValue( PropertiesPtr
properties, const char *property, long *dValue );
Call CS_GetPropertyIntValue to
retrieve a long value with the property name property from the property file
opened with CS_GetBaseProperties or CS_GetBaseProperties. Will return true if
it succeeded, false otherwise.
See also: CS_GetPropertyName, CS_GetBaseProperties,
CS_GetPropertyRawValue, CS_GetPropertyIntValue, CS_GetProperties,
CS_GetPropertyStringValue, CS_ReleaseProperties.
CS_GetPropertyName
Interface: char* CS_GetPropertyName( PropertiesPtr properties,
int index );
Call CS_GetPropertyName starting
with index zero and incrementing index until NULL is returned (signaling that
no more properties are available). This call returns the indexed property name
through which the associated value can then be accessed by using
CS_GetPropertyLongValue, CS_GetPropertyRawValue or CS_GetPropertyIntValue.
See also: CS_GetPropertyLongValue, CS_GetBaseProperties,
CS_GetPropertyRawValue, CS_GetPropertyIntValue, CS_GetProperties,
CS_GetPropertyStringValue, CS_ReleaseProperties.
CS_GetPropertyRawValue
Interface: char* CS_GetPropertyRawValue( PropertiesPtr
properties, const char *property );
Call CS_GetPropertyRawValue to
extract the string value associated with the property. Will return NULL if the
property doesn’t exist.
See also: CS_GetPropertyLongValue, CS_GetBaseProperties,
CS_GetPropertyName, CS_GetPropertyIntValue, CS_GetProperties,
CS_GetPropertyStringValue, CS_ReleaseProperties.
CS_GetPropertyStringValue
Interface: bool CS_GetPropertyStringValue( PropertiesPtr
properties, const char *property, char **fillValue );
Call CS_GetPropertyStringValue to
extract the string value associated with the property. Will return false if the
property doesn’t exist.
See also: CS_GetPropertyLongValue, CS_GetBaseProperties,
CS_GetPropertyName, CS_GetPropertyIntValue, CS_GetProperties,
CS_GetPropertyRawValue, CS_ReleaseProperties.
CS_GetSDKFileTime
Interface: long CS_GetSDKFileTime();
Call CS_GetSDKFileTime to get the
time stamp associated with the compile of Conceptual Speech Commander SDK.
See also: CS_GetVersion.
CS_GetStaticPBSParser
Interface: PBSParserPtr CS_GetStaticPBSParser();
Call CS_GetStaticPBSParser to get
the address of the unique and permanent Parser. Do not call CS_PBSParserDispose
on its result. That Parser is useful for dealing with global constructs. Do not
use this Parser to deal with local constructs, use CS_NewPBSParser instead.
See also: CS_NewPBSParser, CS_PBSParserDispose, CS_Parse,
CS_SetConstruct, CS_GetConstruct.
CS_GetVersion
Interface: double CS_GetVersion();
Call CS_GetVersion to get the
version number associated with the compile of Conceptual Speech Commander SDK.
See also: CS_GetSDKFileTime.
CS_GoToResult
Interface: FillerContent* CS_GoToResult( DrillResultSetPtr res,
int index, PBSParserPtr usePBSParser );
CS_GoToResult gets the filler
index specified in the index following a CS_DrillDownForPredicates call. The
difference between CS_GetPredicate and CS_GoToResult is that constructs were
expected in the CS_DrillDownForPredicates call that generated the
DrillResultSetPtr. For that reason, it is important for a Parser to be passed
in usePBSParser .
See also: CS_DrillDownForPredicates, CS_GetPredicate,
CS_CountPredicatesInResultSet, CS_DisposeResultSet, CS_NewPBSParser,
CS_PBSParserDispose, CS_Parse, CS_SetConstruct, CS_GetConstruct.
CS_HasPredicate
Interface: bool CS_HasPredicate( PredicatePtr dPredicate,
PredicatePtr comparePredicate );
Call CS_HasPredicate to search for a Predicate
comparePredicate in dPredicate. Returns true if found, false otherwise. If
comparePredicate has constructs, it is expected that a call to
CS_PredicateUsesPBSParser will be made with dPredicate passed as a parameter
prior to the CS_HasPredicate call.
See also: CS_GetParentPredicate, CS_GetPredicate,
CS_GetPredicateRepresentationString, CS_GetPrimitive, CS_SetRoleFillerPair,
CS_SetRoleFillerPairStruct, CS_CountRoleFillerPairs, CS_GetFiller,
CS_PredicatesEqual, CS_BuildPredicate, CS_PredicateUsesPBSParser,
CS_DrillDownForPredicates, CS_HasRole, CS_GoToResult, CS_GetFillerOfRole,
CS_DrillDownForFirstPredicate, CS_SetTransientInformation,
CS_ClearTransientInformation, CS_CountPredicatesInResultSet,
CS_DisposeResultSet.
CS_HasRole
Interface: bool CS_HasRole( PredicatePtr dPredicate, char*
roleName );
Call CS_HasRole to verify if roleName exists in
dPredicate. Returns true if it exists, false otherwise.
See also: CS_GetParentPredicate, CS_GetPredicate,
CS_GetPredicateRepresentationString, CS_GetPrimitive, CS_SetRoleFillerPair,
CS_SetRoleFillerPairStruct, CS_CountRoleFillerPairs, CS_GetFiller,
CS_PredicatesEqual, CS_BuildPredicate, CS_PredicateUsesPBSParser,
CS_DrillDownForPredicates, CS_HasPredicate, CS_GoToResult, CS_GetFillerOfRole,
CS_DrillDownForFirstPredicate, CS_SetTransientInformation,
CS_ClearTransientInformation, CS_CountPredicatesInResultSet,
CS_DisposeResultSet.
CS_InitializeThreadContext
Interface: void CS_InitializeThreadContext();
Call CS_InitializeThreadContext after creating a
new thread that uses Conceptual Speech Commander SDK and after a call to
CS_IsThreadAllowed that returned true (if returning false, no SDK call will
succeed).
See also: CS_IsThreadAllowed, CS_FreeThreadContext.
CS_InspectWord
Interface: bool CS_InspectWord( const char *word );
Call CS_InspectWord to set the
current word to inspect to word. Future calls to CS_GetPronunciation,
CS_GetPartOfSpeech and CS_GetPredicateBuilderScript will return results for the
word specified by the CS_InspectWord call.
See also: CS_GetPronunciation, CS_GetPredicateBuilderScript,
CS_GetPartOfSpeech.
CS_IsDebug
Interface: bool CS_IsDebug( PBSParserPtr dPBSParser );
Returns true if a previous
Predicate Builder Script call was made to DEBUG(ON), and the call was before
DEBUG(OFF).
See also: DEBUG.
CS_IsThreadAllowed
Interface: bool CS_IsThreadAllowed();
Call CS_IsThreadAllowed from a new thread to see if
it can access SDK calls. If returning false, the thread may not use any SDK
call. If returning true, call CS_InitializeThreadContext and start calling the
SDK when desired.
See also: CS_InitializeThreadContext, CS_FreeThreadContext.
CS_NewPBSParser
Interface: PBSParserPtr CS_NewPBSParser();
Call CS_NewPBSParser to create a new parser
instance that holds local constructs and have access to global constructs. When
done with the parser returned by that call, call CS_PBSParserDispose on it.
See also: CS_GetStaticPBSParser, CS_PBSParserDispose,
CS_SetConstruct, CS_GetConstruct, CS_Parse.
CS_Parse
Interface: char* CS_Parse( PBSParserPtr dPBSParser, const char*
predicateBuilderScript );
CS_Parse parses a Predicate Builder Script and
returns the result of the parsing. Call CS_Free on the returned result of this
call.
See also: CS_GetStaticPBSParser, CS_PBSParserDispose,
CS_SetConstruct, CS_GetConstruct, CS_NewPBSParser, CS_Free.
CS_ParseRejected
Interface: bool CS_ParseRejected( PBSParserPtr dPBSParser );
CS_ParseRejected returns true if a call to
CS_Reject was made during the parsing.
See also: CS_Reject, CS_Reserve, CS_Parse.
CS_PBSParserDispose
Interface: void CS_PBSParserDispose( PBSParserPtr dPBSParser );
CS_PBSParserDispose disposes a parser that was
created using the CS_NewPBSParser call. Do not call CS_PBSParserDispose on the
parser returned by CS_GetStaticPBSParser call.
See also: CS_NewPBSParser.
CS_PredicatesEqual
Interface: bool CS_PredicatesEqual( PredicatePtr dPredicate,
PredicatePtr comparePredicate, bool* constructSet );
CS_PredicatesEqual compares two Predicates. If
comparePredicate has constructs filler, it is assumed that a call to
CS_PredicateUsesPBSParser would have been made on dPredicate prior to this
call. It returns true if both Predicates are equal, false otherwise.
See also: CS_GetParentPredicate, CS_GetPredicate,
CS_GetPredicateRepresentationString, CS_GetPrimitive, CS_SetRoleFillerPair,
CS_SetRoleFillerPairStruct, CS_CountRoleFillerPairs, CS_GetFiller, CS_HasRole,
CS_BuildPredicate, CS_PredicateUsesPBSParser, CS_DrillDownForPredicates,
CS_HasPredicate, CS_GoToResult, CS_GetFillerOfRole,
CS_DrillDownForFirstPredicate, CS_SetTransientInformation,
CS_ClearTransientInformation, CS_CountPredicatesInResultSet, CS_DisposeResultSet.
CS_PredicateUsesPBSParser
Interface: void CS_PredicateUsesPBSParser( PredicatePtr
dPredicate, PBSParserPtr dPBSParser );
Call CS_PredicateUsesPBSParser before calling
CS_PredicatesEqual or CS_HasPredicate when construct fillers are in the
compared Predicate so that the parser used to hold the construct results is
defined.
See also: CS_PredicatesEqual, CS_GoToResult, CS_HasPredicate.
CS_ProcessTextBuffer
Interface: void CS_ProcessTextBuffer( char* dBuffer, unsigned
long dLength, CD_OutputLevel dDesiredOutput );
Call CS_ProcessTextBuffer to bypass the audio
processing module and process text instead of audio.
CS_ProcessThroughAudioInput
Interface: void CS_ProcessThroughAudioInput( char *data,
CD_OutputLevel dOutput, bool reproduce );
Call CS_ProcessThroughAudioInput to signal to the
SDK to acquire audio input and then perform conceptual speech recognition on
the acquired input.
See also: CS_UseAudioProcessing,
CS_GetAudioProcessingModuleName.
CS_Reject
Interface: void CS_Reject( PBSParserPtr dPBSParser );
CS_Reject signals to the parser that current
parsing was rejected.
See also: CS_ParseRejected, CS_Reserve, CS_Parse.
CS_ReleaseProperties
Interface: void CS_ReleaseProperties( PropertiesPtr properties
);
CS_ReleaseProperties releases the properties that
were created through a CS_GetProperties call. Do not call
CS_ReleaseProperties on properties
obtained with a CS_GetBaseProperties call.
See also: CS_GetPropertyName, CS_GetBaseProperties,
CS_GetPropertyRawValue, CS_GetPropertyLongValue, CS_GetPropertyIntValue,
CS_GetPropertyStringValue, CS_GetProperties.
CS_Reserve
Interface: void CS_Reserve( PBSParserPtr dPBSParser );
CS_Reserve signals to the parser to reserve the
current parsing. If no parsing results in no reject or no reserve, the reserve
parsing will be the successful parsing.
See also: CS_ParseRejected, CS_Reject, CS_Parse.
CS_SetBuffer
Interface: void CS_SetBuffer( const char* toSet, char*&
pBuffer, size_t& curSize );
CS_SetBuffer is to be used with the EvaluateProc
function from Interaction modules in order to set the buffer passed with some
content.
See also: CS_AppendToBuffer.
CS_SetCallBackInterest
Interface: void CS_SetCallBackInterest( DataExchangeMessageType
dType, bool dInterest );
CS_SetCallBackInterest is used to determine whether
or not a callback is of interest to an SDK client.
CS_SetConstruct
Interface: bool CS_SetConstruct( PBSParserPtr dPBSParser, const
char* constructName, const char* constructContent );
Call CS_SetConstruct to set the
construct content to constructContent. You may dispose the content of
constructContent because CS_SetConstruct makes a copy of it (it assumes it to
be a char zero delimited content).
See also: CS_GetConstruct, CS_Parse, CS_GetStaticPBSParser,
CS_NewPBSParser, CS_PBSParserDispose.
CS_SetRoleFillerPair
Interface: bool CS_SetRoleFillerPair( PredicatePtr dPredicate,
char* role, char* filler, bool replace );
Call CS_SetRoleFillerPair to set a
role to the specified filler. If replace is true, only one role with the specified
name is allowed, if not multiple roles with same names are allowed.
See also: CS_SetRoleFillerPairStruct, CS_HasRole, CS_GetFiller.
CS_SetRoleFillerPairStruct
Interface: bool CS_SetRoleFillerPairStruct( PredicatePtr
dPredicate, char* role, FillerContentPtr filler );
Call CS_SetRoleFillerPairStruct to
set a role to the specified filler.
See also: CS_SetRoleFillerPair, CS_HasRole, CS_GetFiller.
CS_SetTransientInformation
Interface: void CS_SetTransientInformation( PredicatePtr
dPredicate );
Call CS_SetTransientInformation on dPredicate prior
to calling CS_GetParentPredicate on any of its Predicate fillers.
See also: CS_GetParentPredicate, CS_ClearTransientInformation.
CS_UseAudioProcessing
Interface: bool CS_UseAudioProcessing( char *moduleName );
Call CS_UseAudioProcessing to change the audio
processing module..
See also: CS_ProcessThroughAudioInput,
CS_GetAudioProcessingModuleName.
CS_UtilityStripCharsFromEnds
Interface: void CS_UtilityStripCharsFromEnds( char* script,
char dChar );
Call CS_UtilityStripCharsFromEnds to strip the
characters dChar from both ends (beginning and end) of script. It puts the
result in script when done.
|