Zweck
Ruft den Wert des Attributs 'namespace' für das angegebene Syntaxelement ab.
Definiert in |
Typ |
Mitglied |
CPI_VFT |
Optional |
iFpElementValue |
Syntax
CciSize cpiElementNamespace(
int* returnCode,
CciElement* targetElement,
const CciChar* value,
CciSize length);
Parameter
- returnCode
- Die Eingabe eines Nullzeigers bedeutet, dass der benutzerdefinierte Knoten nicht für Fehler zuständig sein möchte. Jegliche während der Ausführung dieses Aufrufs ausgelösten Ausnahmebedingungen werden beim nächsten übergeordneten Knoten im Fluss erneut ausgelöst. Ist eine Eingabe nicht NULL, bedeutet die Ausgabe den Erfolgsstatus des Aufrufs. Wenn während der Ausführung eine Ausnahmebedingung auftritt, wird *returnCode bei der Ausgabe auf CCI_EXCEPTION gesetzt. Rufen Sie cciGetLastExceptionData für Details der Ausnahmebedingung auf. Wenn der Aufrufende nicht genügend Speicher für den Namespacewert zugeordnet hat, wird als Wert für '*returncode' CCI_BUFFER_TOO_SMALL festgelegt.
Mögliche Rückkehrcodes sind:
- CCI_SUCCESS
- CCI_EXCEPTION
- CCI_INV_ELEMENT_OBJECT
- CCI_INV_DATA_POINTER
- CCI_INV_DATA_BUFLEN
- CCI_INV_BUFFER_TOO_SMALL
- targetElement
- Gibt die Adresse des Zielsyntaxelementobjekts an.
- value
- Gibt die Adresse eines Puffers an, in den der Namespacewert des Elements kopiert wird. Eine Zeichenfolge (einschließlich Nullabschlusszeichen), die den Namespaceswert darstellt, wird in diesen Puffer kopiert.
Der Puffer sollte Teil des Speichers sein, der zuvor vom Aufrufenden zugeordnet wurde.
- length
- Die Länge des Puffers (in Zeichen (ChiChars)), der durch den Parameter 'value' angegeben wird.
Rückgabewerte
Bei erfolgreicher Ausführung wird die Anzahl der in den Puffer kopierten Zeichen (CciChars) zurückgegeben.
Wenn der Puffer für den Attributwert nicht groß genug ist, wird als Wert für returnCode CCI_BUFFER_TOO_SMALL festgelegt, und die erforderliche Anzahl der Zeichen (CciChars) wird zurückgegeben.
Beispiel
elementNamespace=(CciChar*)malloc(sizeof(CciChar) * elementNamespaceLength);
elementNamespaceLength = cpiElementNamespace(&rc;,
element,
elementNamespace,
elementNamespaceLength);
if (rc==CCI_BUFFER_TOO_SMALL){
free(elementNamespace);
elementNamespace=(CciChar*)malloc(sizeof(CciChar) * elementNamespaceLength);
elementNamespaceLength = cpiElementNamespace(&rc;,
element,
elementNamespace,
elementNamespaceLength);
}
checkRC(rc);