Ejemplo n.º 1
0
void POVMS_Object::Merge(POVMS_Object& source)
{
	int err;

	err = POVMSObject_Merge(&source.data, &data);
	if(err != pov_base::kNoErr)
		throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 2
0
void POVMS_Object::SetType(POVMSType key, POVMSType value)
{
    int err;

    err = POVMSUtil_SetType(&data, key, value);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 3
0
void POVMS_Object::Remove(POVMSType key)
{
	int err;

	err = POVMSObject_Remove(&data, key);
	if(err != pov_base::kNoErr)
		throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 4
0
POVMS_Object::~POVMS_Object()
{
	int err;

	err = POVMSObject_Delete(&data);
	if(err != pov_base::kNoErr)
		throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 5
0
POVMS_Object::POVMS_Object(POVMSType objclass)
{
	int err;

	err = POVMSObject_New(&data, objclass);
	if(err != pov_base::kNoErr)
		throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 6
0
POVMS_Message::POVMS_Message(POVMS_Object& convert, POVMSType msgclass, POVMSType msgid) : POVMS_Object(convert)
{
    int err;

    err = POVMSMsg_SetupMessage(&data, msgclass, msgid);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 7
0
void POVMS_Message::SetDestinationAddress(POVMSAddress addr)
{
    int err;

    err = POVMSMsg_SetDestinationAddress(&data, addr);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 8
0
void POVMS_List::Clear()
{
    int err;

    err = POVMSAttrList_Clear(&data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 9
0
void POVMS_Object::SetUCS2String(POVMSType key, const POVMSUCS2 *str)
{
	int err;

	err = POVMSUtil_SetUCS2String(&data, key, str);
	if(err != pov_base::kNoErr)
		throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 10
0
void POVMS_List::RemoveNth(int index)
{
    int err;

    err = POVMSAttrList_RemoveNth(&data, index);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 11
0
POVMS_List::POVMS_List(const POVMS_List& source)
{
    int err;

    err = POVMSAttrList_Copy(&source.data, &data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 12
0
POVMS_List::~POVMS_List()
{
    int err;

    err = POVMSAttrList_Delete(&data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 13
0
void POVMS_Attribute::Set(POVMSType type, const void *data, int datasize)
{
    int err;

    err = POVMSAttr_Set(&this->data, type, data, datasize);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 14
0
POVMS_Attribute::~POVMS_Attribute()
{
    int err;

    err = POVMSAttr_Delete(&data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 15
0
POVMS_Attribute::POVMS_Attribute(const POVMS_Attribute& source)
{
    int err;

    err = POVMSAttr_Copy(&source.data, &data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
}
Ejemplo n.º 16
0
POVMS_Attribute::POVMS_Attribute(const POVMSUCS2 *str)
{
    int len;
    int err;

    for(len = 0; str[len] != 0; len++) { }

    err = POVMSAttr_New(&data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);
    err = POVMSAttr_Set(&data, kPOVMSType_UCS2String, reinterpret_cast<const void *>(str), (len + 1) * 2);
    if(err != pov_base::kNoErr)
    {
        (void)POVMSAttr_Delete(&data);
        throw POV_EXCEPTION_CODE(err);
    }
}
Ejemplo n.º 17
0
void PreWriteFrame(OStream *, const Animation::WriteOptions&, vector<string>&, void *state)
{
    PrivateData *pd = reinterpret_cast<PrivateData *>(state);

    if(pd == NULL)
        throw POV_EXCEPTION_CODE(kNullPointerErr);

    // there really is nothing to do here [trf]
}
Ejemplo n.º 18
0
void POVMS_Object::Set(POVMSType key, POVMS_Object& attr)
{
    int err;

    err = POVMSObject_Set(&data, &attr.data, key);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    attr.DetachData();
}
Ejemplo n.º 19
0
void POVMS_List::SetNth(int index, POVMS_Object& item)
{
    int err;

    err = POVMSAttrList_SetNth(&data, index, &item.data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    item.DetachData();
}
Ejemplo n.º 20
0
int POVMS_Object::GetUCS2String(POVMSType key, POVMSUCS2 *str, int maxlen)
{
    int err;

    err = POVMSUtil_GetUCS2String(&data, key, str, &maxlen);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    return maxlen;
}
Ejemplo n.º 21
0
void POVMS_List::Append(POVMS_Object& item)
{
    int err;

    err = POVMSAttrList_Append(&data, &item.data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    item.DetachData();
}
Ejemplo n.º 22
0
OTextStream::OTextStream(const UCS2 *sname, unsigned int stype, bool append)
{
	if(sname == NULL)
		throw POV_EXCEPTION_CODE(kParamErr);

	stream = NewOStream(sname, stype, append);
	if(stream == NULL)
		throw POV_EXCEPTION(kCannotOpenFileErr, string("Cannot open file '") + UCS2toASCIIString(sname) + "' for output.");

	filename = UCS2String(sname);
}
Ejemplo n.º 23
0
POVMS_Object::POVMS_Object(const POVMS_Object& source)
{
    if(source.IsNull() == false)
    {
        int err;

        err = POVMSObject_Copy(&source.data, &data);
        if(err != pov_base::kNoErr)
            throw POV_EXCEPTION_CODE(err);
    }
}
Ejemplo n.º 24
0
int POVMS_List::GetListSize()
{
    int len = 0;
    int err;

    err = POVMSAttrList_Count(&data, &len);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    return len;
}
Ejemplo n.º 25
0
void POVMS_SendMessage(POVMS_Message& msg)
{
    int err;

    err = POVMS_Send(nullptr, &msg.data, nullptr, kPOVMSSendMode_NoReply);

    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    msg.DetachData();
}
Ejemplo n.º 26
0
POVMSAddress POVMS_Message::GetDestinationAddress()
{
    POVMSAddress addr;
    int err;

    err = POVMSMsg_GetDestinationAddress(&data, &addr);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    return addr;
}
Ejemplo n.º 27
0
POVMSType POVMS_Message::GetIdentifier()
{
    POVMSType type;
    int err;

    err = POVMSMsg_GetMessageIdentifier(&data, &type);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    return type;
}
Ejemplo n.º 28
0
POVMSType POVMS_Object::GetType(POVMSType key)
{
    POVMSType value;
    int err;

    err = POVMSUtil_GetType(&data, key, &value);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    return value;
}
Ejemplo n.º 29
0
int POVMS_Object::GetUCS2StringLength(POVMSType key)
{
    int len = 0;
    int err;

    err = POVMSUtil_GetUCS2StringLength(&data, key, &len);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    return len;
}
Ejemplo n.º 30
0
POVMS_Object& POVMS_Object::operator=(const POVMS_Object& source)
{
    int err;

    err = POVMSObject_Delete(&data);
    if((err == pov_base::kNoErr) && (IsNull() == false))
        err = POVMSObject_Copy(&source.data, &data);
    if(err != pov_base::kNoErr)
        throw POV_EXCEPTION_CODE(err);

    return *this;
}